[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi] Retooling: timing comparison

From: Greg Chicares
Subject: [lmi] Retooling: timing comparison
Date: Mon, 8 Feb 2016 02:19:33 +0000
User-agent: 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
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:

 4452 https://www.cpubenchmark.net/cpu.php?cpu=Intel+Xeon+E5520+%40+2.27GHz
 8267 https://www.cpubenchmark.net/cpu.php?cpu=Intel+Core+i7-2600+%40+3.40GHz
12877 https://www.cpubenchmark.net/cpu.php?cpu=Intel+Xeon+E5-2630+v3+%40+2.40GHz

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
built in).

reply via email to

[Prev in Thread] Current Thread [Next in Thread]