/trunk/Examples/python/performance/harness.py

# · Python · 30 lines · 22 code · 7 blank · 1 comment · 2 complexity · a3f4342bcaa396fb53b415e684b22d07 MD5 · raw file

  1. #!/usr/bin/env
  2. import sys
  3. import time
  4. import imp
  5. from subprocess import *
  6. def run (proc) :
  7. try :
  8. mod = imp.find_module(sys.argv[1])
  9. mod = imp.load_module(sys.argv[1], *mod)
  10. t1 = time.clock()
  11. proc(mod)
  12. t2 = time.clock()
  13. print "%s took %f seconds" % (mod.__name__, t2 - t1)
  14. except IndexError :
  15. proc = Popen([sys.executable, 'runme.py', 'Simple_baseline'], stdout=PIPE)
  16. (stdout, stderr) = proc.communicate()
  17. print stdout
  18. proc = Popen([sys.executable, 'runme.py', 'Simple_optimized'], stdout=PIPE)
  19. (stdout, stderr) = proc.communicate()
  20. print stdout
  21. proc = Popen([sys.executable, 'runme.py', 'Simple_builtin'], stdout=PIPE)
  22. (stdout, stderr) = proc.communicate()
  23. print stdout