Thursday, October 14, 2010

SBR600: RPM Packages II

Today, I'd like to benchmark my system using rpmbuild with an option that controls different numbers of processes to build at at time. The file that controls rpmbuild macros is located in your home directory, called .rpmmacros (Notice there's a period in the beginning of the file name. So it's a hidden file.)
Once you take a look at .rpmmacros file, you should notice it's a script file. And the place I am interested today is the line where it says

else echo "-j3"; fi)

I'm going to try inputting different numbers after the j switch, which would tell rpmbuild how many jobs should be started at each time. The default value for most of you should be 3 as far as I know.

To begin, I'm going to download a source package that is bigger than NLED, which I decided on GNU Image Manipulation Program or simply gimp.

yumdownloader --source gimp
rpm -i ~/gimp-2.6.10-1.fc13.src.rpm
cd ~/rpmbuild/SPECS


So I'm going to first start with -j1. Before I begin, here's a little bit of information about my machine.

  • Fedora 13 x86_64
  • Kernel Linux 2.6.34.7-56fc13.x86_64
  • GNOME 2.30.0

  • Intel Core2Quad Q9550 CPU over clocked to 3.4Ghz
  • 2 X 2GB PC2-6400 DDR2 800 RAM at 4-4-4-12 timings
  • Asus P5E Motherboard (Intel X38 & ICH9R Chipsets)
  • Fedora installed in 300GB Western Digital Velociraptor 10,000rpm Harddrive.
  • Nvidia GTX470 chipset videocard with 1280MB of GDDR5 VRAM

Time command will be used to correctly measure the time. So I will begin my experiment by typing,

time rpmbuild -ba ~/rpmbuild/SPECS/gimp.spec

Oops, it looks like I don't have all the necessary tools for rebuilding. rpmbuild gave me an error and I ended up manually installing those packages before I continued.





So here are the results.

j1:
real    4m32.243s
user    6m51.577s
sys    1m55.820s

j2:
real    2m58.416s
user    3m2.266s
sys    1m8.217s

j3: (system default): 
real    5m36.593s
user    3m11.762s
sys    1m10.262s

j4:
real    5m36.461s
user    3m10.043s
sys    1m11.825s

j5:
real    5m40.848s
user    3m13.106s
sys    1m12.367s

It shows that j2 option performs significantly better than others. To confirm, I've benchmarked again with j2. And the result is...

real    5m41.125s
user    3m13.665s
sys    1m12.188s

I am very confused about the result. I must be missing something out or I am benchmarking incorrectly. I will look more into that in the future.

No comments:

Post a Comment