Marc-Andre Lemburg <[email protected]> added the comment:
On 2008-12-21 22:37, Antoine Pitrou wrote:
> New submission from Antoine Pitrou <[email protected]>:
>
> This patch prints opcode statistics at the end of a pybench run if
> DYNAMIC_EXECUTION_PROFILE has been enabled when compiling the interpreter.
>
> Is it ok? Is it better to add it to the Benchmark class?
I don't think it's worth doing this for low-level and highly
artificial benchmarks like the ones run by pybench.
Opcode statistics are much better taken in real life applications,
e.g. let Django, Zope, etc. run for a day or two and then look
at the opcode statistics.
If at all, then opcode statistics should be an optional feature
enabled by a command line switch. I'd then create new methods
bench.start_opcode_stats(), bench.stop_opcode_stats() and
bench.get_opcode_stats().
Also note that this line will result in wrong results:
+ if opstats:
+ opstats = [new - old
+ for new, old in zip(sys.getdxp(), opstats)]
It should be:
start_opstats = sys.getdxp()
...
stop_opstats = sys.getdxp()
opstats = [new_value - old_value
for new_value, old_value in zip(stop_opstats, start_opstats]
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue4714>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com