My nightly run of pybench went up from the usual 7590ms per run to around 8200ms between Monday night and today. Can anyone explain this ?
Did you compare the outputs? There could be importants hint there! :-)
Maybe this checkin to ceval.c backfired?
revision 2.351 date: 2003/02/26 18:11:50; author: rhettinger; state: Exp; lines: +18 -4 Micro-optimizations.
- List/Tuple checkexact is faster for the common case.
- Testing for Py_True and Py_False can be inlined for faster looping.
That would be a bummer. It looked like a pure win.
I timed the changes with PyStone with N=200000 and got: Base Code: 12.379 12.2716 12.2716 + CheckExact: 12.2746 12.2278 12.3165 + T/F inlined: 12.108 12.1697 12.1259
Since PyStone does weird things to booleans and uses "while 1", I ran a separate test on "while 1" vs. "while True" showed a speedup of "while True" and no measurable change to "while 1".
If your timings show a different result, let me know and I'll back it out.