[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi] Retooling: timing comparison
[lmi] Retooling: timing comparison
Mon, 8 Feb 2016 02:19:33 +0000
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.5.0
We've just tested a new set of tools:
- the latest Cygwin
- MinGW-w64 gcc-4.9.1
on machines in the office, and everything seems to have gone well
except for this nuisance:
due to corporate antimalware. It is interesting to compare timings:
-begin stamp-- --end stamp--- min %
log-20160129T1600Z-gwc 20160129T1719Z 79 100%
log-20160128T1527Z-wab 20160128T1757Z 150 190%
log-20160128T2207Z-wab 20160129T0034Z 147 186%
log-20160129T1642Z-kmm 20160129T1942Z 180 228%
log-20160120T1933Z-gwc 20160120T2017Z 44 56% --jobs=6'
log-20160130T0038Z-gwc 20160130T0121Z 43 54% --jobs=6'
log-20160130T2115Z-gwc 20160130T2158Z 43 54% --jobs=4'
log-20160131T1406Z-gwc 20160131T1500Z 54 68% --jobs=2'
log-20160130T2335Z-OLD 20160131T0039Z 64 81% --jobs=2
log-20160201T1951Z-kmm 20160201T2152Z 121 153% --jobs=2
log-20160202T2007Z-kmm 20160202T2141Z 94 119% --jobs=4
log-20160204T2216Z-gwc 20160204T2258Z 42 53% --jobs=4
log-20160206T0108Z-gwc 20160206T0151Z 43 54% --jobs=6
log-20160206T0155Z-gwc 20160206T0239Z 44 56% --jobs=4
(BTW, here are some timings with
NUMBER_OF_PROCESSORS = '1'
in msw VMs with only one vCPU...
log-20160131T2005Z-gwc 20160131T2107Z 62 78% '--jobs=4 --output-sync=recurse'
log-20160201T2151Z-gwc 20160201T2254Z 63 80% '--jobs=2 --output-sync=recurse'
...which (compared to log-20160129T1600Z above) show that '--jobs=N'
is helpful even if only one CPU is available; that's why it seemed
safe to set '--jobs=4' in 'install_msw.sh'.)
The "gwc" machine is 2 x E5-2630 v3 with a 1TB Samsung 850 pro SSD.
The "OLD" (2009) machine is 2 x E5520 with a 2TB WDC WD2003FZEX HDD.
Both these machines were running msw-xp in a kvm-qemu VM, hosted by
The other machines have i7-2600 (not i7-2600K) CPUs, with 250GB
Hitachi HDS721025CLA682 HDDs, running 64-bit msw-7.
All machines have more RAM than these tests could use.
If the CPU is the decisive factor, then we'd expect OLD to be the
slowest by far based on these "CPU Mark" results:
but in the measurements above it's twice as fast as the i7-2600's.
Perhaps its WD RE drive is tremendously faster than the Hitachis?
At any rate, those Hitachi drives are weak performers for compiling
on an i7-2600 system; SSDs should be the most cost-effective upgrade,
and a top-of-the-line 250GB SSD costs very little--e.g., these two
US$120.89 Samsung 850 Pro 256GB
US$114.99 SanDisk Extreme Pro 240GB
(latest prices at a well-known online retailer) both have ten-year
Still, hardware can't account for the performance differences. I
booted native 32-bit msw-xp on the OLD (2009) machine and measured:
log-20160202T0110Z-OLD 20160202T0151Z 41 52% --jobs=2
log-20160202T0154Z-OLD 20160202T0223Z 29 37% --jobs=4
log-20160206T1339Z-OLD 20160206T1405Z 26 33% --jobs=6
which suggests (as we'd expect) that the VMs used for all timings
above (except for the i7-2600's) add about a 50% overhead. It would
be hard to believe that 32-bit msw-xp is better at multiprocessing
than 64-bit msw-7. All I can guess is that antimalware is sapping
the performance in the office.
To round out the comparison, here are timings for cross-building
msw binaries. Same compiler; same script and makefiles as above,
with just enough adjustments to get them to run in a debian-8 chroot:
1896.35s user 130.66s system 584% cpu 5:46.89 total
1876.19s user 129.11s system 588% cpu 5:40.88 total
1874.06s user 129.67s system 587% cpu 5:40.89 total
2147.31s user 137.37s system 956% cpu 3:58.86 total
2147.85s user 137.95s system 961% cpu 3:57.72 total
2143.15s user 137.42s system 936% cpu 4:03.46 total
3238.23s user 175.19s system 1605% cpu 3:32.59 total
3237.65s user 174.71s system 1619% cpu 3:30.69 total
3237.35s user 173.99s system 1615% cpu 3:31.14 total
With eight CPUs (four cores, times two for hyperthreading, and thus
comparable to the i7-2600), that's six minutes to build the same
32-bit msw binaries that take at least ninety-four minutes in the
office. The biggest difference is the operating system: msw with
aftermarket security added on, versus GNU/Linux (with security
- [lmi] Retooling: timing comparison,
Greg Chicares <=