diff options
-rw-r--r-- | Lib/hotshot/stones.py | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/Lib/hotshot/stones.py b/Lib/hotshot/stones.py index e171fbc..cd4c51d 100644 --- a/Lib/hotshot/stones.py +++ b/Lib/hotshot/stones.py @@ -5,27 +5,27 @@ import os import sys import test.pystone +def main(logfile): + p = hotshot.Profile(logfile) + benchtime, stones = p.runcall(test.pystone.pystones) + p.close() -if sys.argv[1:]: - logfile = sys.argv[1] -else: - import tempfile - logf = tempfile.NamedTemporaryFile() - logfile = logf.name + print "Pystone(%s) time for %d passes = %g" % \ + (test.pystone.__version__, test.pystone.LOOPS, benchtime) + print "This machine benchmarks at %g pystones/second" % stones -p = hotshot.Profile(logfile) -benchtime, stones = p.runcall(test.pystone.pystones) -p.close() + stats = hotshot.stats.load(logfile) + stats.strip_dirs() + stats.sort_stats('time', 'calls') + try: + stats.print_stats(20) + except IOError, e: + if e.errno != errno.EPIPE: + raise -print "Pystone(%s) time for %d passes = %g" % \ - (test.pystone.__version__, test.pystone.LOOPS, benchtime) -print "This machine benchmarks at %g pystones/second" % stones - -stats = hotshot.stats.load(logfile) -stats.strip_dirs() -stats.sort_stats('time', 'calls') -try: - stats.print_stats(20) -except IOError, e: - if e.errno != errno.EPIPE: - raise +if __name__ == '__main__': + if sys.argv[1:]: + main(sys.argv[1]) + else: + import tempfile + main(tempfile.NamedTemporaryFile().name) |