Saturday, March 13, 2010

Arm Builds

Environment: Q6600, 4 gigs on ram, 7 virtualized arm machines ( on the Q6600 ) on a private NAT network.

Our attempt is to see which pre-existing SRPMS from FedoraCore 12 will be able to build on ARM, and if there are simple fixes in order to make them build, then to utilize them. At first these builds seemed to take a very long time, then we found out that was due to someone utilizing all the computers resources at the same time. After this changed build times went down. However, the virtualized machines do not seem consistent.

Later on I'm going to post all the build success and build failures and hopefully soon the real ARM machines will be in and we can compare how the builds in a virtualized ARM machine compare to the builds in a real arm machine.

Friday, February 19, 2010

Mock and Koji

The mock build with irssi went smoothly, however I ran into some issues with koji. When putting the certificate obtained from https://admin.fedoraproject.org/accounts/user/gencert, you should save the certificate and move it to .fedora.cert instead of copying and pasting it. This will cause an issue. This was the only issue I had to overcome as everything else ran smoothly. The issue will be plain as soon as your run /usr/bin/fedora-packager-setup. After this issue was resolved everything ran smoothly.

Wednesday, February 10, 2010

rpmbuild: First Attempt

After playing around with Apache, I decided to go with a simpler package to build. I decided I would try irssi, which is an IRC chat client. In order to package the IRSSI client I first started by obtaining the tarbal from
http://www.irssi.org/files/irssi-0.8.14.tar.gz. I then extracted
irssi, and looked for files like, "LICENSE, INSTALL, README,
ChangeLog, Makefile" as these are all very important when building the
SPEC file. Before I started building the SPEC file I set up the RPM tree using, "rpmdev-setuptree". This will make
a nice safe area to build RPMs. The rpmbuild directory
was created under ~/rpmbuild. The tarbal needed to be moved to
~/rpmbuild/SOURCE directory. Then the "rpmdev-newspec [packagename.spec]" command is
issued, which will create a bar bones SPEC file that you can fill out
based on the information gathered earlier in the tarball. I found
that reading http://fedoraproject.org/wiki/PackageMaintainers/CreatingPackageHowTo
was fairly helpful to understanding what section means what. Once the
SPEC file is filled out the "rpmbuild -ba packagename.spec" is issued.
Initially I found some errors, and resolved them. after this we issued the rpmlint [packagename]. I had no errors, however I had a warning which was because of trailing spaces.

Tuesday, January 26, 2010

Make -J

System 1
CPU: AMD Phenom ii 940 3.6ghz
Memory: 4096 DDR2 1000mhz 5-5-5-15 @2.0v
Motherboard: ASUS M3A78-CM

Steps for proper multithreaded emulation using virtual machines. In order to utilize your CPU's cores you must enable either VT-X or AMD-V depending on your CPU's architecture. Some motherboards will disable these features by default. It's not always easy to find these options in your BIOS as they might not be labelled as VT-X [intel] or AMD-V [AMD]. For example It might come up as SVM or secure virtual machine. Once you have found these in the BIOS enable the feature on the hypervisor. My choice for hypervisor was VirtualBox. Follow these steps and compilation times will improve and you will be able to utilize your cpu's cores.

System 2
Processor: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
RAM: 4096 DDR2 [unsure of frequency / timings ]
Motherboard: Intel DQ35JOE
[ benchmarks were all done on system 2 ]

Make

real 0m55.661s

user 0m26.299s

sys 0m28.122s

Make

real 0m56.408s

user 0m26.324s

sys 0m28.234s

Make -j2

real 0m31.994s

user 0m25.047s

sys 0m24.933s

Make -j2

real 0m31.591s

user 0m24.953s

sys 0m25.034s

make -j3

real 0m25.007s

user 0m23.618s

sys 0m24.088s

Make -j3

real 0m25.661s

user 0m23.808s

sys 0m23.964s

make -j4

real 0m39.048s

user 0m58.727s

sys 0m28.605s

Make -j4

real 0m22.115s

user 0m23.160s

sys 0m23.179s

Make -j6

real 0m20.827s

user 0m23.418s

sys 0m23.376s

Make -j6

real 0m20.331s

user 0m23.284s

sys 0m23.703s

Make -j8

real 0m20.179s

user 0m23.637s

sys 0m23.953s

Make -j8

real 0m20.708s

user 0m23.706s

sys 0m23.896s

Make -j

-j [jobs], --jobs[=jobs]
Specifies the number of jobs (commands) to run simultaneously. If
there is more than one -j option, the last one is effective. If
the -j option is given without an argument, make will not limit
the number of jobs that can run simultaneously.

Both machines I used were QUAD cores, and the results were fairly obvious. The -j option increases the amount of jobs and it seems the compilation running just one job at a time is much slower than running multiple jobs. It's seems optimal to run between 6 and 8 jobs on the Q6600 quad core.


Monday, January 18, 2010

SBR600 First Compiles

The compiles were extremely simple at school, however I found when doing the compile at home for it to require a few extra steps. The NLED site, was probably the greatest source of this confusion as it claims that NLED can be compiled without any "tweaking", needing to be done to your linux distribution. This does not hold true for either ubuntu 9.04 or Fedora12. I hope that the following can help anyone with their compiles.

Under Ubuntu 9.04 in order to finish the compile I had to issue the following commands:
sudo apt-get install build-essentials
sudo apt-get install libncurses5-dev
After doing so the compile ran normally.
#Change the directory to whever NLED was extracted
sudo make
Then enter nled and it's up and working.


This was done on Fedora
The compile I chose to do was asterisk, since I'm interested in asterisk anyways
#Change the Directory to where ever the source code was extracted
./configure
make
make install

Make sure that your running as superuser for these commands.

Friday, January 15, 2010

SBR600 First Blog

Hello, my name is Daniel Gilloch and I am enrolled in SBR600. It is a requirement to create this blog, so here it is! Good luck everyone!

http://zenit.senecac.on.ca/wiki/index.php/User:Dgilloch