[Python-Dev] Re: Are we collecting benchmark results across machines

Josiah Carlson jcarlson at uci.edu
Sat Jan 3 15:58:41 EST 2004


Another small set of pystone and parrotbench results...

Best of 7 runs on a standard windows build of Python on windows 2000:
Processor      P4 2.26ghz           P4 Cel 1.7ghz   P2 Cel 400mhz
bus            533 mhz              400 mhz         66 mhz
l2cache        512k                 128k            128k
memory         1G DualChan DDR333   256M DDR200     384M SDR66
2.2.2 Pystone  ~25600               ~18500          ~6086
2.3.2 Pystone  ~31800                               ~6830
2.3.2 Parrot   16.06s                               83.4s
2.3.2 Pys*Par  510708                               569622

A few things to note:
I don't have consistant access to the 1.7ghz celeron, which is why it
didn't get any 2.3 tests.

The p2 celeron is a dual processor system.  There does not seem to be an
easy way to give a process one processor affinity on the command line.
However, even inserting a pause into pystone in order to alter processor
affinity does not seem to appreciably alter the pystone speed. This may
suggest that Python has a working set so large that it doesn't fit into
the 128k of L2 cache on either of the celerons.  This is supported by
the fact that based on the python 2.2.2 pystone results, the 2.26 P4
performs like a 2.35 ghz P4 celeron (256/185*1.7), which could be due to
the larger cache, higher speed memory, or more likely both.

It is also likely that the P4s aren't as fast per clock as the P2 due to
the heavy branch misprediction penalties that the architecture suffers
from.

Strange thing:
The 2.26 ghz P4 gains more in the Pystone benchmark from the 2.2.2 ->
2.3.2 transition than the celeron 400, 24% and 12% increases in Pystones
respectively.


 - Josiah




More information about the Python-Dev mailing list