[Python-Dev] Performance compares

M.-A. Lemburg mal@lemburg.com
Thu, 17 May 2001 09:26:32 +0200


Tim Peters wrote:
> 
> [MAL]
> > Since it is possible that these figures result from my specific
> > machine setup, I'd like to know what other people see on their
> > machines.
> 
> Is this the same machine where you were able to get 15% difference a few
> years ago by adding or removing an unreachable printf in ceval.c (or was that
> Vladimir)?  If so, I bet it's degenerated to random 50% difference since then
> <wink>.

That must have been Valdimir's machine... even though I do admit
that some small reordering changes do result in speedups of
up to 10% -- probably due to the compiler accidentally creating
code which the CPUs cache management likes.
 
> My Win98SE box is *astonishingly* useless for timings.  Without fail, the
> first time I run pystone after a reboot yields a result a solid 50% higher
> than the second or subsequent times I run it (yes, it's major-league *slower*
> the second time).  This is true across dozens of trials over several months,
> and across all versions of Python.

On Linux the situation is somewhat different; still I'm executing
the tests 10-times each and for the figures I posted, I even
ran pybench twice and only took the second readings as basis.
 
> And simple little loops routinely vary in reported runtime by a factor of 3.
> I may have to dig my old Win95 box out of the packing crate <0.6 wink>.
> 
> None of that changes, of course, that the numbers you got are scary.

Sure are... but I'm not so much interested in the absolute
numbers -- it's the hot-spots which showed up that scare me:
e.g. dictionary creation seems to have suffered along the way
for some reason, functions calls are even slower now than they
were previously and other important tasks such a instance
creation take a similar hit (probably as a result of the other
two).

Running the same test for 2.1 vs. 2.0 there's not much to
notice, so the important changes seem to be originating in
the move from 1.5.2 to 2.0.

-- 
Marc-Andre Lemburg
______________________________________________________________________
Company & Consulting:                           http://www.egenix.com/
Python Software:                        http://www.lemburg.com/python/