Here we keep track of some build time and other statistics. Our hope is to improve build times in successive releases of QGIS. Also we are interested to get a general idea of how long it is taking people to build QGIS on different processors etc. So entering your benchmarks here and for successive releases will give some interesting feedback.

Build Times

0.11.0

CPU
Speed
With ccache
Without ccache
OS
Who
Intel(R) Pentium(R) Dual CPU E2180 @ 2.00GHz 2 x 1200GHz
8.34m Ubuntu Hardy Tim

|

0.9.0 SVN Head

CPU
Speed
With ccache
Without ccache
OS
Who
4 x Intel(R) Xeon(TM) CPU 4 x 3.80GHz
6m10s Fedora Core Tim

|

0.7.9.10 SVN Head

CPU
Speed
With ccache
Without ccache
OS
Who
Intel(R) Pentium(R) 4 2.60GHz 25m
Ubuntu Breez Tim

|

0.7.9.7 SVN Head

CPU
Speed
With ccache
Without ccache
OS
Who
Intel(R) Pentium(R) 4 2.60GHz
36m07s Ubuntu Breezy Tim

|

0.7.9.5 SVN Head

CPU
Speed
With ccache
Without ccache
OS
Who
Intel(R) Pentium(R) 4 2.60GHz 5m10s 35m Ubuntu Breezy Tim
AMD Athlon(tm) XP 3200+ 2.19Ghz 15m34s 29m53s Ubuntu Breezy Tim (Work)
Intel(R) Pentium(R) 4 3.0GHz 3m 49s 18m 23s Ubuntu Hoary gsherman
AMD Athlon(tm) XP 2400+ 2.0GHz 5m 2s 21m 17s Mandrakelinux 10.2 Gavin
AMD Athlon(tm) 64 Processor 3000+ 2.0GHz 3m 13m 30s Fedora Core 3 Soeren
AMD Athlon(tm) XP 2500+ 1.83GH 5m 1s 26m 40s Gentoo Martin

|

0.7.4 Stable

CPU
Speed
With ccache
Without ccache
OS
Who
Intel(R) Pentium(R) 4 3.0GHz 5m 22s 18m 36s Ubuntu Hoary gsherman
Intel(R) Pentium(R) 4 2.60GHz 36m 44s
Ubuntu Breezy Tim

|

How we benchmarked

All compiles were done after first doing a

 make distclean

The without ccache builds were carried out after first doing:

 ccache -C

to clear the cache. The with ccache were done after having built QGIS at least once before so that .o files were cached.

We used the 'time' command to keep track of the build time:

time ./build.sh $HOME/apps/

When compilation completes time will give output such as:

 real    39m24.105s
 user    31m49.760s
 sys     3m10.394s

The actual build time added to the table above should be calculated as User + Sys, so in this case it is 35min.

The build.sh script mentioned above completes the following tasks - you should replicate these when building manually so that your benchmarks are comparable.

 #!/bin/bash
 # 
 # A simple script to build QGIS
 #       Tim Sutton 2005
 #
 if [ ! $1 ]
 then
 echo "Usage: ${0} install_prefix" 
 echo "e.g." 
 echo "${0} \$HOME/apps/" 
  exit 1
 fi
 export QTDIR=/usr/local/Trolltech/Qt-4.1.0/
 export PATH=$QTDIR/bin:$PATH
 export LD_LIBRARY_PATH=$QTDIR/lib
 ./autogen.sh --enable-debug --prefix=${1} --with-qtdir=$QTDIR --with-grass=/usr/lib/grass && make && make install

CPU model name and speed were obtained using:

cat /proc/cpuinfo

Which produces output like this:

 processor       : 0
 vendor_id       : AuthenticAMD
 cpu family      : 6 
 model           : 10
 model name      : AMD Athlon(tm) XP 3200+ <-- Used for processor name
 stepping        : 0
 cpu MHz         : 2191.170 <-- Used for processor speed
 cache size      : 512 KB
 fdiv_bug        : no
 hlt_bug         : no
 f00f_bug        : no
 coma_bug        : no
 fpu             : yes
 fpu_exception   : yes
 cpuid level     : 1  
 wp              : yes
 flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov 
                    pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow
 bogomips        : 4341.76