Skip to content

Instantly share code, notes, and snippets.

@1st1
Created January 27, 2016 16:51
Show Gist options
  • Save 1st1/aed69d63a2ff4de4c7be to your computer and use it in GitHub Desktop.
Save 1st1/aed69d63a2ff4de4c7be to your computer and use it in GitHub Desktop.
Caching in ceval + LOAD_METHOD
yury@ares ~/benchmarks $ uname -a
Linux ares.sprymix.net 4.1.2 #10 SMP Fri Jul 10 19:14:52 EDT 2015 x86_64 Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz GenuineIntel GNU/Linux
yury@ares ~/benchmarks $ ../tmp/cpython/python -c 'import sys; print(sys.version)'
3.6.0a0 (default, Jan 26 2016, 19:04:11)
[GCC 4.9.3]
yury@ares ~/benchmarks $ cat /proc/meminfo | grep MemTotal
MemTotal: 65948368 kB
yury@ares ~/benchmarks $ python3.5 perf.py -b all ../test2/cpython/python ../tmp/cpython/python -r
INFO:root:Automatically selected timer: perf_counter
INFO:root:Skipping benchmark pybench; not compatible with Python 3.6
INFO:root:Skipping benchmark slowspitfire; not compatible with Python 3.6
INFO:root:Skipping benchmark rietveld; not compatible with Python 3.6
INFO:root:Skipping benchmark slowpickle; not compatible with Python 3.6
INFO:root:Skipping benchmark html5lib; not compatible with Python 3.6
INFO:root:Skipping benchmark slowunpickle; not compatible with Python 3.6
INFO:root:Skipping benchmark spambayes; not compatible with Python 3.6
INFO:root:Skipping benchmark bzr_startup; not compatible with Python 3.6
INFO:root:Skipping benchmark hg_startup; not compatible with Python 3.6
INFO:root:Skipping benchmark html5lib_warmup; not compatible with Python 3.6
[ 1/43] 2to3...
INFO:root:Running `../tmp/cpython/python lib3/2to3/2to3 -f all lib/2to3`
INFO:root:Running `../tmp/cpython/python lib3/2to3/2to3 -f all lib/2to3` 5 times
INFO:root:Running `../test2/cpython/python lib3/2to3/2to3 -f all lib/2to3`
INFO:root:Running `../test2/cpython/python lib3/2to3/2to3 -f all lib/2to3` 5 times
[ 2/43] call_method...
INFO:root:Running `../tmp/cpython/python performance/bm_call_method.py -n 300 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_call_method.py -n 300 --timer perf_counter`
[ 3/43] call_method_slots...
INFO:root:Running `../tmp/cpython/python performance/bm_call_method_slots.py -n 300 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_call_method_slots.py -n 300 --timer perf_counter`
[ 4/43] call_method_unknown...
INFO:root:Running `../tmp/cpython/python performance/bm_call_method_unknown.py -n 300 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_call_method_unknown.py -n 300 --timer perf_counter`
[ 5/43] call_simple...
INFO:root:Running `../tmp/cpython/python performance/bm_call_simple.py -n 300 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_call_simple.py -n 300 --timer perf_counter`
[ 6/43] chameleon_v2...
INFO:root:Running `../tmp/cpython/python performance/bm_chameleon_v2.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_chameleon_v2.py -n 100 --timer perf_counter`
[ 7/43] chaos...
INFO:root:Running `../tmp/cpython/python performance/bm_chaos.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_chaos.py -n 100 --timer perf_counter`
[ 8/43] django_v3...
INFO:root:Running `../tmp/cpython/python performance/bm_django_v3.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_django_v3.py -n 100 --timer perf_counter`
[ 9/43] etree_generate...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
[10/43] etree_iterparse...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
[11/43] etree_parse...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
[12/43] etree_process...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
[13/43] fannkuch...
INFO:root:Running `../tmp/cpython/python performance/bm_fannkuch.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_fannkuch.py -n 100 --timer perf_counter`
[14/43] fastpickle...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle`
[15/43] fastunpickle...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle`
[16/43] float...
INFO:root:Running `../tmp/cpython/python performance/bm_float.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_float.py -n 100 --timer perf_counter`
[17/43] formatted_logging...
INFO:root:Running `../tmp/cpython/python performance/bm_logging.py -n 100 --timer perf_counter formatted_output`
INFO:root:Running `../test2/cpython/python performance/bm_logging.py -n 100 --timer perf_counter formatted_output`
[18/43] go...
INFO:root:Running `../tmp/cpython/python performance/bm_go.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_go.py -n 100 --timer perf_counter`
[19/43] hexiom2...
INFO:root:Running `../tmp/cpython/python performance/bm_hexiom2.py -n 4 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_hexiom2.py -n 4 --timer perf_counter`
[20/43] json_dump_v2...
INFO:root:Running `../tmp/cpython/python performance/bm_json_v2.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_json_v2.py -n 100 --timer perf_counter`
[21/43] json_load...
INFO:root:Running `../tmp/cpython/python performance/bm_json.py -n 100 --timer perf_counter json_load`
INFO:root:Running `../test2/cpython/python performance/bm_json.py -n 100 --timer perf_counter json_load`
[22/43] mako_v2...
INFO:root:Running `../tmp/cpython/python performance/bm_mako_v2.py -n 1000 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_mako_v2.py -n 1000 --timer perf_counter`
[23/43] meteor_contest...
INFO:root:Running `../tmp/cpython/python performance/bm_meteor_contest.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_meteor_contest.py -n 100 --timer perf_counter`
[24/43] nbody...
INFO:root:Running `../tmp/cpython/python performance/bm_nbody.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_nbody.py -n 100 --timer perf_counter`
[25/43] normal_startup...
INFO:root:Running `../tmp/cpython/python -c ` 2000 times
INFO:root:Running `../test2/cpython/python -c ` 2000 times
[26/43] nqueens...
INFO:root:Running `../tmp/cpython/python performance/bm_nqueens.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_nqueens.py -n 100 --timer perf_counter`
[27/43] pathlib...
INFO:root:Running `../tmp/cpython/python performance/bm_pathlib.py -n 1000 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_pathlib.py -n 1000 --timer perf_counter`
[28/43] pickle_dict...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
[29/43] pickle_list...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_list`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_list`
[30/43] pidigits...
INFO:root:Running `../tmp/cpython/python performance/bm_pidigits.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_pidigits.py -n 100 --timer perf_counter`
[31/43] raytrace...
INFO:root:Running `../tmp/cpython/python performance/bm_raytrace.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_raytrace.py -n 100 --timer perf_counter`
[32/43] regex_compile...
INFO:root:Running `../tmp/cpython/python performance/bm_regex_compile.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_regex_compile.py -n 100 --timer perf_counter`
[33/43] regex_effbot...
INFO:root:Running `../tmp/cpython/python performance/bm_regex_effbot.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_regex_effbot.py -n 100 --timer perf_counter`
[34/43] regex_v8...
INFO:root:Running `../tmp/cpython/python performance/bm_regex_v8.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_regex_v8.py -n 100 --timer perf_counter`
[35/43] richards...
INFO:root:Running `../tmp/cpython/python performance/bm_richards.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_richards.py -n 100 --timer perf_counter`
[36/43] silent_logging...
INFO:root:Running `../tmp/cpython/python performance/bm_logging.py -n 100 --timer perf_counter no_output`
INFO:root:Running `../test2/cpython/python performance/bm_logging.py -n 100 --timer perf_counter no_output`
[37/43] simple_logging...
INFO:root:Running `../tmp/cpython/python performance/bm_logging.py -n 100 --timer perf_counter simple_output`
INFO:root:Running `../test2/cpython/python performance/bm_logging.py -n 100 --timer perf_counter simple_output`
[38/43] spectral_norm...
INFO:root:Running `../tmp/cpython/python performance/bm_spectral_norm.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_spectral_norm.py -n 100 --timer perf_counter`
[39/43] startup_nosite...
INFO:root:Running `../tmp/cpython/python -S -c ` 4000 times
INFO:root:Running `../test2/cpython/python -S -c ` 4000 times
[40/43] telco...
INFO:root:Running `../tmp/cpython/python performance/bm_telco.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_telco.py -n 100 --timer perf_counter`
[41/43] tornado_http...
INFO:root:Running `../tmp/cpython/python performance/bm_tornado_http.py -n 200 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_tornado_http.py -n 200 --timer perf_counter`
[42/43] unpack_sequence...
INFO:root:Running `../tmp/cpython/python performance/bm_unpack_sequence.py -n 100000 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_unpack_sequence.py -n 100000 --timer perf_counter`
[43/43] unpickle_list...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle_list`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle_list`
Report on Linux ares.sprymix.net 4.1.2 #10 SMP Fri Jul 10 19:14:52 EDT 2015 x86_64 Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz
Total CPU cores: 8
### 2to3 ###
Min: 6.016000 -> 5.848000: 1.03x faster
Avg: 6.055200 -> 5.913600: 1.02x faster
Significant (t=3.53)
Stddev: 0.03627 -> 0.08200: 2.2612x larger
### call_method ###
Min: 0.262379 -> 0.209124: 1.25x faster
Avg: 0.263642 -> 0.210208: 1.25x faster
Significant (t=248.27)
Stddev: 0.00295 -> 0.00228: 1.2979x smaller
### call_method_slots ###
Min: 0.253497 -> 0.205658: 1.23x faster
Avg: 0.256810 -> 0.208024: 1.23x faster
Significant (t=48.13)
Stddev: 0.01516 -> 0.00885: 1.7125x smaller
### call_method_unknown ###
Min: 0.260457 -> 0.236897: 1.10x faster
Avg: 0.267405 -> 0.243623: 1.10x faster
Significant (t=11.03)
Stddev: 0.02954 -> 0.02287: 1.2918x smaller
### call_simple ###
Min: 0.199613 -> 0.189236: 1.05x faster
Avg: 0.206654 -> 0.196612: 1.05x faster
Significant (t=3.70)
Stddev: 0.03504 -> 0.03131: 1.1191x smaller
### chameleon_v2 ###
Min: 4.918281 -> 4.413880: 1.11x faster
Avg: 4.982994 -> 4.518044: 1.10x faster
Significant (t=14.79)
Stddev: 0.15774 -> 0.27199: 1.7243x larger
### chaos ###
Min: 0.259579 -> 0.251606: 1.03x faster
Avg: 0.261906 -> 0.254772: 1.03x faster
Significant (t=12.80)
Stddev: 0.00330 -> 0.00449: 1.3615x larger
### django_v3 ###
Min: 0.504350 -> 0.492709: 1.02x faster
Avg: 0.533927 -> 0.509903: 1.05x faster
Significant (t=2.43)
Stddev: 0.08010 -> 0.05797: 1.3818x smaller
### etree_generate ###
Min: 0.227991 -> 0.241852: 1.06x slower
Avg: 0.230094 -> 0.245301: 1.07x slower
Significant (t=-69.93)
Stddev: 0.00148 -> 0.00160: 1.0798x larger
### etree_iterparse ###
Min: 0.178931 -> 0.173983: 1.03x faster
Avg: 0.181862 -> 0.176403: 1.03x faster
Significant (t=33.28)
Stddev: 0.00132 -> 0.00098: 1.3441x smaller
### etree_parse ###
Min: 0.225732 -> 0.233473: 1.03x slower
Avg: 0.227036 -> 0.235216: 1.04x slower
Significant (t=-52.72)
Stddev: 0.00082 -> 0.00131: 1.5941x larger
### etree_process ###
Min: 0.199965 -> 0.213954: 1.07x slower
Avg: 0.202817 -> 0.240502: 1.19x slower
Significant (t=-7.03)
Stddev: 0.00344 -> 0.05353: 15.5625x larger
### fannkuch ###
Min: 0.841899 -> 0.887417: 1.05x slower
Avg: 0.846966 -> 0.926708: 1.09x slower
Significant (t=-5.34)
Stddev: 0.00602 -> 0.14932: 24.7875x larger
### fastpickle ###
Min: 0.424079 -> 0.423300: 1.00x faster
Avg: 0.442428 -> 0.425525: 1.04x faster
Significant (t=2.72)
Stddev: 0.06201 -> 0.00273: 22.7505x smaller
### formatted_logging ###
Min: 0.303565 -> 0.294368: 1.03x faster
Avg: 0.307543 -> 0.297463: 1.03x faster
Significant (t=20.71)
Stddev: 0.00412 -> 0.00260: 1.5823x smaller
### go ###
Min: 0.462381 -> 0.444645: 1.04x faster
Avg: 0.481758 -> 0.450712: 1.07x faster
Significant (t=6.75)
Stddev: 0.04561 -> 0.00603: 7.5651x smaller
### json_load ###
Min: 0.379790 -> 0.365684: 1.04x faster
Avg: 0.382417 -> 0.367822: 1.04x faster
Significant (t=49.74)
Stddev: 0.00265 -> 0.00125: 2.1228x smaller
### mako_v2 ###
Min: 0.036321 -> 0.032995: 1.10x faster
Avg: 0.037065 -> 0.033763: 1.10x faster
Significant (t=73.01)
Stddev: 0.00087 -> 0.00114: 1.3113x larger
### meteor_contest ###
Min: 0.162299 -> 0.156035: 1.04x faster
Avg: 0.163336 -> 0.157000: 1.04x faster
Significant (t=40.30)
Stddev: 0.00146 -> 0.00059: 2.4835x smaller
### nbody ###
Min: 0.194434 -> 0.188794: 1.03x faster
Avg: 0.195249 -> 0.189648: 1.03x faster
Significant (t=66.87)
Stddev: 0.00063 -> 0.00055: 1.1570x smaller
### pickle_dict ###
Min: 0.464398 -> 0.551091: 1.19x slower
Avg: 0.486206 -> 0.554060: 1.14x slower
Significant (t=-12.92)
Stddev: 0.05192 -> 0.00781: 6.6514x smaller
### pickle_list ###
Min: 0.247835 -> 0.241370: 1.03x faster
Avg: 0.249974 -> 0.261512: 1.05x slower
Significant (t=-2.63)
Stddev: 0.00304 -> 0.04370: 14.3664x larger
### pidigits ###
Min: 0.231654 -> 0.225228: 1.03x faster
Avg: 0.232963 -> 0.225920: 1.03x faster
Significant (t=26.44)
Stddev: 0.00256 -> 0.00074: 3.4748x smaller
### regex_compile ###
Min: 0.294525 -> 0.274278: 1.07x faster
Avg: 0.299315 -> 0.284642: 1.05x faster
Significant (t=3.96)
Stddev: 0.01980 -> 0.03135: 1.5835x larger
### regex_v8 ###
Min: 0.036281 -> 0.034528: 1.05x faster
Avg: 0.036614 -> 0.034897: 1.05x faster
Significant (t=11.25)
Stddev: 0.00109 -> 0.00107: 1.0194x smaller
### richards ###
Min: 0.141355 -> 0.134537: 1.05x faster
Avg: 0.142238 -> 0.135900: 1.05x faster
Significant (t=37.88)
Stddev: 0.00049 -> 0.00160: 3.2876x larger
### silent_logging ###
Min: 0.062376 -> 0.055473: 1.12x faster
Avg: 0.063543 -> 0.056662: 1.12x faster
Significant (t=9.23)
Stddev: 0.00601 -> 0.00441: 1.3641x smaller
### simple_logging ###
Min: 0.253703 -> 0.251558: 1.01x faster
Avg: 0.262781 -> 0.254531: 1.03x faster
Significant (t=3.54)
Stddev: 0.02286 -> 0.00437: 5.2367x smaller
### spectral_norm ###
Min: 0.239381 -> 0.233404: 1.03x faster
Avg: 0.240076 -> 0.234912: 1.02x faster
Significant (t=17.39)
Stddev: 0.00102 -> 0.00279: 2.7301x larger
### telco ###
Min: 0.009739 -> 0.010332: 1.06x slower
Avg: 0.009846 -> 0.010440: 1.06x slower
Significant (t=-60.49)
Stddev: 0.00006 -> 0.00007: 1.1497x larger
### tornado_http ###
Min: 0.230034 -> 0.222652: 1.03x faster
Avg: 0.233616 -> 0.225499: 1.04x faster
Significant (t=15.86)
Stddev: 0.00376 -> 0.00619: 1.6472x larger
### unpack_sequence ###
Min: 0.000038 -> 0.000037: 1.03x faster
Avg: 0.000039 -> 0.000037: 1.04x faster
Significant (t=342.86)
Stddev: 0.00000 -> 0.00000: 1.0778x smaller
The following not significant results are hidden, use -v to show them:
fastunpickle, float, hexiom2, json_dump_v2, normal_startup, nqueens, pathlib, raytrace, regex_effbot, startup_nosite, unpickle_list.
=============== [separate runs]
yury@ysmbp ~/dev/py/benchmarks $ python3.5 perf.py -b telco ../cpython/python.exe ../cpython-git/python.exe -r
INFO:root:Automatically selected timer: perf_counter
[1/1] telco...
^[[A
INFO:root:Running `../cpython-git/python.exe performance/bm_telco.py -n 100 --timer perf_counter`
^[[A
^[[A
^[[A
^[OFINFO:root:Running `../cpython/python.exe performance/bm_telco.py -n 100 --timer perf_counter`
Report on Darwin ysmbp.local 15.2.0 Darwin Kernel Version 15.2.0: Fri Nov 13 19:56:56 PST 2015; root:xnu-3248.20.55~2/RELEASE_X86_64 x86_64 i386
Total CPU cores: 8
### telco ###
Min: 0.007980 -> 0.007260: 1.10x faster
Avg: 0.009557 -> 0.008644: 1.11x faster
Significant (t=55.91)
Stddev: 0.00118 -> 0.00113: 1.0429x smaller
yury@ysmbp ~/dev/py/benchmarks $ python3.5 perf.py -b telco ../cpython/python.exe ../cpython-git/python.exe -r
INFO:root:Automatically selected timer: perf_counter
[1/1] telco...
INFO:root:Running `../cpython-git/python.exe performance/bm_telco.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_telco.py -n 100 --timer perf_counter`
Report on Darwin ysmbp.local 15.2.0 Darwin Kernel Version 15.2.0: Fri Nov 13 19:56:56 PST 2015; root:xnu-3248.20.55~2/RELEASE_X86_64 x86_64 i386
Total CPU cores: 8
### telco ###
Min: 0.007641 -> 0.007278: 1.05x faster
Avg: 0.009217 -> 0.008724: 1.06x faster
Significant (t=30.64)
Stddev: 0.00115 -> 0.00112: 1.0284x smaller
yury@ysmbp ~/dev/py/benchmarks $ python3.5 perf.py -b telco ../cpython/python.exe ../cpython-git/python.exe -r
INFO:root:Automatically selected timer: perf_counter
[1/1] telco...
INFO:root:Running `../cpython-git/python.exe performance/bm_telco.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_telco.py -n 100 --timer perf_counter`
Report on Darwin ysmbp.local 15.2.0 Darwin Kernel Version 15.2.0: Fri Nov 13 19:56:56 PST 2015; root:xnu-3248.20.55~2/RELEASE_X86_64 x86_64 i386
Total CPU cores: 8
The following not significant results are hidden, use -v to show them:
telco.
yury@ares ~/benchmarks $ uname -a
Linux ares.sprymix.net 4.1.2 #10 SMP Fri Jul 10 19:14:52 EDT 2015 x86_64 Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz GenuineIntel GNU/Linux
yury@ares ~/benchmarks $ ../tmp/cpython/python -c 'import sys; print(sys.version)'
3.6.0a0 (default, Jan 26 2016, 19:04:11)
[GCC 4.9.3]
yury@ares ~/benchmarks $ cat /proc/meminfo | grep MemTotal
MemTotal: 65948368 kB
yury@ares ~/benchmarks $ python3.5 perf.py -b all ../test2/cpython/python ../tmp/cpython/python -r
INFO:root:Automatically selected timer: perf_counter
INFO:root:Skipping benchmark html5lib; not compatible with Python 3.6
INFO:root:Skipping benchmark slowspitfire; not compatible with Python 3.6
INFO:root:Skipping benchmark slowunpickle; not compatible with Python 3.6
INFO:root:Skipping benchmark spambayes; not compatible with Python 3.6
INFO:root:Skipping benchmark hg_startup; not compatible with Python 3.6
INFO:root:Skipping benchmark bzr_startup; not compatible with Python 3.6
INFO:root:Skipping benchmark rietveld; not compatible with Python 3.6
INFO:root:Skipping benchmark html5lib_warmup; not compatible with Python 3.6
INFO:root:Skipping benchmark pybench; not compatible with Python 3.6
INFO:root:Skipping benchmark slowpickle; not compatible with Python 3.6
[ 1/43] 2to3...
INFO:root:Running `../tmp/cpython/python lib3/2to3/2to3 -f all lib/2to3`
INFO:root:Running `../tmp/cpython/python lib3/2to3/2to3 -f all lib/2to3` 5 times
INFO:root:Running `../test2/cpython/python lib3/2to3/2to3 -f all lib/2to3`
INFO:root:Running `../test2/cpython/python lib3/2to3/2to3 -f all lib/2to3` 5 times
[ 2/43] call_method...
INFO:root:Running `../tmp/cpython/python performance/bm_call_method.py -n 300 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_call_method.py -n 300 --timer perf_counter`
[ 3/43] call_method_slots...
INFO:root:Running `../tmp/cpython/python performance/bm_call_method_slots.py -n 300 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_call_method_slots.py -n 300 --timer perf_counter`
^[[A
^[[A
[ 4/43] call_method_unknown...
INFO:root:Running `../tmp/cpython/python performance/bm_call_method_unknown.py -n 300 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_call_method_unknown.py -n 300 --timer perf_counter`
[ 5/43] call_simple...
INFO:root:Running `../tmp/cpython/python performance/bm_call_simple.py -n 300 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_call_simple.py -n 300 --timer perf_counter`
[ 6/43] chameleon_v2...
INFO:root:Running `../tmp/cpython/python performance/bm_chameleon_v2.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_chameleon_v2.py -n 100 --timer perf_counter`
[ 7/43] chaos...
INFO:root:Running `../tmp/cpython/python performance/bm_chaos.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_chaos.py -n 100 --timer perf_counter`
[ 8/43] django_v3...
INFO:root:Running `../tmp/cpython/python performance/bm_django_v3.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_django_v3.py -n 100 --timer perf_counter`
[ 9/43] etree_generate...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
[10/43] etree_iterparse...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
[11/43] etree_parse...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
[12/43] etree_process...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
[13/43] fannkuch...
INFO:root:Running `../tmp/cpython/python performance/bm_fannkuch.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_fannkuch.py -n 100 --timer perf_counter`
[14/43] fastpickle...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle`
[15/43] fastunpickle...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle`
[16/43] float...
INFO:root:Running `../tmp/cpython/python performance/bm_float.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_float.py -n 100 --timer perf_counter`
[17/43] formatted_logging...
INFO:root:Running `../tmp/cpython/python performance/bm_logging.py -n 100 --timer perf_counter formatted_output`
INFO:root:Running `../test2/cpython/python performance/bm_logging.py -n 100 --timer perf_counter formatted_output`
[18/43] go...
INFO:root:Running `../tmp/cpython/python performance/bm_go.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_go.py -n 100 --timer perf_counter`
[19/43] hexiom2...
INFO:root:Running `../tmp/cpython/python performance/bm_hexiom2.py -n 4 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_hexiom2.py -n 4 --timer perf_counter`
[20/43] json_dump_v2...
INFO:root:Running `../tmp/cpython/python performance/bm_json_v2.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_json_v2.py -n 100 --timer perf_counter`
[21/43] json_load...
INFO:root:Running `../tmp/cpython/python performance/bm_json.py -n 100 --timer perf_counter json_load`
INFO:root:Running `../test2/cpython/python performance/bm_json.py -n 100 --timer perf_counter json_load`
[22/43] mako_v2...
INFO:root:Running `../tmp/cpython/python performance/bm_mako_v2.py -n 1000 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_mako_v2.py -n 1000 --timer perf_counter`
[23/43] meteor_contest...
INFO:root:Running `../tmp/cpython/python performance/bm_meteor_contest.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_meteor_contest.py -n 100 --timer perf_counter`
[24/43] nbody...
INFO:root:Running `../tmp/cpython/python performance/bm_nbody.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_nbody.py -n 100 --timer perf_counter`
[25/43] normal_startup...
INFO:root:Running `../tmp/cpython/python -c ` 2000 times
INFO:root:Running `../test2/cpython/python -c ` 2000 times
[26/43] nqueens...
INFO:root:Running `../tmp/cpython/python performance/bm_nqueens.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_nqueens.py -n 100 --timer perf_counter`
[27/43] pathlib...
INFO:root:Running `../tmp/cpython/python performance/bm_pathlib.py -n 1000 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_pathlib.py -n 1000 --timer perf_counter`
[28/43] pickle_dict...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
[29/43] pickle_list...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_list`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_list`
[30/43] pidigits...
INFO:root:Running `../tmp/cpython/python performance/bm_pidigits.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_pidigits.py -n 100 --timer perf_counter`
[31/43] raytrace...
INFO:root:Running `../tmp/cpython/python performance/bm_raytrace.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_raytrace.py -n 100 --timer perf_counter`
[32/43] regex_compile...
INFO:root:Running `../tmp/cpython/python performance/bm_regex_compile.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_regex_compile.py -n 100 --timer perf_counter`
[33/43] regex_effbot...
INFO:root:Running `../tmp/cpython/python performance/bm_regex_effbot.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_regex_effbot.py -n 100 --timer perf_counter`
[34/43] regex_v8...
INFO:root:Running `../tmp/cpython/python performance/bm_regex_v8.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_regex_v8.py -n 100 --timer perf_counter`
[35/43] richards...
INFO:root:Running `../tmp/cpython/python performance/bm_richards.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_richards.py -n 100 --timer perf_counter`
[36/43] silent_logging...
INFO:root:Running `../tmp/cpython/python performance/bm_logging.py -n 100 --timer perf_counter no_output`
INFO:root:Running `../test2/cpython/python performance/bm_logging.py -n 100 --timer perf_counter no_output`
[37/43] simple_logging...
INFO:root:Running `../tmp/cpython/python performance/bm_logging.py -n 100 --timer perf_counter simple_output`
INFO:root:Running `../test2/cpython/python performance/bm_logging.py -n 100 --timer perf_counter simple_output`
[38/43] spectral_norm...
INFO:root:Running `../tmp/cpython/python performance/bm_spectral_norm.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_spectral_norm.py -n 100 --timer perf_counter`
[39/43] startup_nosite...
INFO:root:Running `../tmp/cpython/python -S -c ` 4000 times
INFO:root:Running `../test2/cpython/python -S -c ` 4000 times
[40/43] telco...
INFO:root:Running `../tmp/cpython/python performance/bm_telco.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_telco.py -n 100 --timer perf_counter`
[41/43] tornado_http...
INFO:root:Running `../tmp/cpython/python performance/bm_tornado_http.py -n 200 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_tornado_http.py -n 200 --timer perf_counter`
[42/43] unpack_sequence...
INFO:root:Running `../tmp/cpython/python performance/bm_unpack_sequence.py -n 100000 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_unpack_sequence.py -n 100000 --timer perf_counter`
[43/43] unpickle_list...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle_list`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle_list`
Report on Linux ares.sprymix.net 4.1.2 #10 SMP Fri Jul 10 19:14:52 EDT 2015 x86_64 Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz
Total CPU cores: 8
### 2to3 ###
Min: 6.012000 -> 5.828000: 1.03x faster
Avg: 6.044000 -> 5.911200: 1.02x faster
Significant (t=2.75)
Stddev: 0.02466 -> 0.10501: 4.2587x larger
### call_method ###
Min: 0.258916 -> 0.206257: 1.26x faster
Avg: 0.260096 -> 0.207326: 1.25x faster
Significant (t=495.16)
Stddev: 0.00109 -> 0.00149: 1.3661x larger
### call_method_slots ###
Min: 0.255608 -> 0.205282: 1.25x faster
Avg: 0.256972 -> 0.211929: 1.21x faster
Significant (t=23.99)
Stddev: 0.00167 -> 0.03248: 19.3947x larger
### call_method_unknown ###
Min: 0.259281 -> 0.236459: 1.10x faster
Avg: 0.261142 -> 0.244974: 1.07x faster
Significant (t=7.35)
Stddev: 0.00301 -> 0.03796: 12.6319x larger
### call_simple ###
Min: 0.199556 -> 0.190193: 1.05x faster
Avg: 0.201065 -> 0.191017: 1.05x faster
Significant (t=66.50)
Stddev: 0.00257 -> 0.00050: 5.1565x smaller
### chameleon_v2 ###
Min: 4.853294 -> 4.399112: 1.10x faster
Avg: 4.942227 -> 4.433761: 1.11x faster
Significant (t=15.37)
Stddev: 0.31715 -> 0.09382: 3.3804x smaller
### etree_generate ###
Min: 0.229448 -> 0.236121: 1.03x slower
Avg: 0.232367 -> 0.238964: 1.03x slower
Significant (t=-43.31)
Stddev: 0.00119 -> 0.00095: 1.2478x smaller
### etree_parse ###
Min: 0.227591 -> 0.245070: 1.08x slower
Avg: 0.229286 -> 0.246566: 1.08x slower
Significant (t=-92.64)
Stddev: 0.00167 -> 0.00084: 1.9944x smaller
### fannkuch ###
Min: 0.836352 -> 0.902409: 1.08x slower
Avg: 0.842077 -> 0.940334: 1.12x slower
Significant (t=-6.35)
Stddev: 0.00873 -> 0.15460: 17.7077x larger
### fastpickle ###
Min: 0.423058 -> 0.420725: 1.01x faster
Avg: 0.425679 -> 0.452593: 1.06x slower
Significant (t=-3.16)
Stddev: 0.00123 -> 0.08526: 69.5041x larger
### float ###
Min: 0.224958 -> 0.219500: 1.02x faster
Avg: 0.231099 -> 0.225844: 1.02x faster
Significant (t=10.56)
Stddev: 0.00331 -> 0.00372: 1.1245x larger
### go ###
Min: 0.462822 -> 0.450418: 1.03x faster
Avg: 0.482129 -> 0.455403: 1.06x faster
Significant (t=4.04)
Stddev: 0.06520 -> 0.01151: 5.6649x smaller
### hexiom2 ###
Min: 109.101442 -> 99.647912: 1.09x faster
Avg: 111.086422 -> 100.572470: 1.10x faster
Significant (t=9.95)
Stddev: 1.88124 -> 0.96097: 1.9576x smaller
### mako_v2 ###
Min: 0.034636 -> 0.033359: 1.04x faster
Avg: 0.035546 -> 0.034280: 1.04x faster
Significant (t=11.76)
Stddev: 0.00274 -> 0.00202: 1.3524x smaller
### meteor_contest ###
Min: 0.160615 -> 0.156450: 1.03x faster
Avg: 0.163636 -> 0.159119: 1.03x faster
Significant (t=3.24)
Stddev: 0.00892 -> 0.01070: 1.1992x larger
### nbody ###
Min: 0.198180 -> 0.186305: 1.06x faster
Avg: 0.200868 -> 0.188485: 1.07x faster
Significant (t=8.07)
Stddev: 0.01189 -> 0.00969: 1.2271x smaller
### nqueens ###
Min: 0.245949 -> 0.227285: 1.08x faster
Avg: 0.256461 -> 0.235917: 1.09x faster
Significant (t=5.61)
Stddev: 0.02764 -> 0.02405: 1.1493x smaller
### pathlib ###
Min: 0.071664 -> 0.068172: 1.05x faster
Avg: 0.073014 -> 0.069741: 1.05x faster
Significant (t=11.83)
Stddev: 0.00387 -> 0.00483: 1.2477x larger
### pickle_dict ###
Min: 0.456399 -> 0.556209: 1.22x slower
Avg: 0.460058 -> 0.560498: 1.22x slower
Significant (t=-59.86)
Stddev: 0.01284 -> 0.01080: 1.1894x smaller
### pidigits ###
Min: 0.231522 -> 0.225496: 1.03x faster
Avg: 0.238262 -> 0.229560: 1.04x faster
Significant (t=2.76)
Stddev: 0.02795 -> 0.01462: 1.9118x smaller
### raytrace ###
Min: 1.097089 -> 1.152704: 1.05x slower
Avg: 1.181943 -> 1.222822: 1.03x slower
Significant (t=-2.39)
Stddev: 0.12658 -> 0.11550: 1.0960x smaller
### regex_compile ###
Min: 0.294299 -> 0.269669: 1.09x faster
Avg: 0.304817 -> 0.270997: 1.12x faster
Significant (t=10.77)
Stddev: 0.03140 -> 0.00101: 30.9612x smaller
### richards ###
Min: 0.141406 -> 0.135393: 1.04x faster
Avg: 0.144049 -> 0.138196: 1.04x faster
Significant (t=4.21)
Stddev: 0.01014 -> 0.00953: 1.0643x smaller
### silent_logging ###
Min: 0.062884 -> 0.055842: 1.13x faster
Avg: 0.063902 -> 0.057091: 1.12x faster
Significant (t=11.79)
Stddev: 0.00337 -> 0.00470: 1.3947x larger
### simple_logging ###
Min: 0.253857 -> 0.244354: 1.04x faster
Avg: 0.255694 -> 0.248685: 1.03x faster
Significant (t=7.30)
Stddev: 0.00108 -> 0.00954: 8.8688x larger
### telco ###
Min: 0.009265 -> 0.010311: 1.11x slower
Avg: 0.009388 -> 0.010419: 1.11x slower
Significant (t=-101.74)
Stddev: 0.00008 -> 0.00007: 1.1731x smaller
### tornado_http ###
Min: 0.229026 -> 0.223605: 1.02x faster
Avg: 0.231869 -> 0.226682: 1.02x faster
Significant (t=15.58)
Stddev: 0.00218 -> 0.00417: 1.9164x larger
### unpack_sequence ###
Min: 0.000038 -> 0.000037: 1.03x faster
Avg: 0.000039 -> 0.000038: 1.02x faster
Significant (t=178.30)
Stddev: 0.00000 -> 0.00000: 1.0852x larger
The following not significant results are hidden, use -v to show them:
chaos, django_v3, etree_iterparse, etree_process, fastunpickle, formatted_logging, json_dump_v2, json_load, normal_startup, pickle_list, regex_effbot, regex_v8, spectral_norm, startup_nosite, unpickle_list.
=============== [separate runs]
yury@ares ~/benchmarks $ python3.5 perf.py -b pickle_dict ../test2/cpython/python ../tmp/cpython/python -r
INFO:root:Automatically selected timer: perf_counter
[1/1] pickle_dict...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
Report on Linux ares.sprymix.net 4.1.2 #10 SMP Fri Jul 10 19:14:52 EDT 2015 x86_64 Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz
Total CPU cores: 8
The following not significant results are hidden, use -v to show them:
pickle_dict.
yury@ares ~/benchmarks $ python3.5 perf.py -b pickle_dict ../test2/cpython/python ../tmp/cpython/python -r
INFO:root:Automatically selected timer: perf_counter
[1/1] pickle_dict...
INFO:root:Running `../tmp/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
INFO:root:Running `../test2/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
Report on Linux ares.sprymix.net 4.1.2 #10 SMP Fri Jul 10 19:14:52 EDT 2015 x86_64 Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz
Total CPU cores: 8
### pickle_dict ###
Min: 0.455909 -> 0.450845: 1.01x faster
Avg: 0.487319 -> 0.468325: 1.04x faster
Significant (t=2.10)
Stddev: 0.07175 -> 0.05512: 1.3018x smaller
=============== [separate runs]
yury@ares ~/benchmarks $ python3.5 perf.py -b telco ../test2/cpython/python ../tmp/cpython/python -r
INFO:root:Automatically selected timer: perf_counter
[1/1] telco...
INFO:root:Running `../tmp/cpython/python performance/bm_telco.py -n 100 --timer perf_counter`
INFO:root:Running `../test2/cpython/python performance/bm_telco.py -n 100 --timer perf_counter`
Report on Linux ares.sprymix.net 4.1.2 #10 SMP Fri Jul 10 19:14:52 EDT 2015 x86_64 Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz
Total CPU cores: 8
### telco ###
Min: 0.010333 -> 0.010072: 1.03x faster
Avg: 0.010651 -> 0.010998: 1.03x slower
Significant (t=-18.68)
Stddev: 0.00063 -> 0.00175: 2.7933x larger
=============== [separate runs]
yury@ares ~/benchmarks $ python3.5 perf.py -b etree ../test2/cpython/python ../tmp/cpython/python -r
INFO:root:Automatically selected timer: perf_counter
[1/4] etree_generate...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
[2/4] etree_iterparse...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
[3/4] etree_parse...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
[4/4] etree_process...
INFO:root:Running `../tmp/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
INFO:root:Running `../test2/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
Report on Linux ares.sprymix.net 4.1.2 #10 SMP Fri Jul 10 19:14:52 EDT 2015 x86_64 Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz
Total CPU cores: 8
### etree_iterparse ###
Min: 0.169025 -> 0.163021: 1.04x faster
Avg: 0.176081 -> 0.170357: 1.03x faster
Significant (t=2.62)
Stddev: 0.01525 -> 0.01562: 1.0239x larger
### etree_parse ###
Min: 0.249782 -> 0.237655: 1.05x faster
Avg: 0.258332 -> 0.241459: 1.07x faster
Significant (t=7.04)
Stddev: 0.02365 -> 0.00385: 6.1469x smaller
### etree_process ###
Min: 0.202531 -> 0.212959: 1.05x slower
Avg: 0.205440 -> 0.222724: 1.08x slower
Significant (t=-7.92)
Stddev: 0.00289 -> 0.02164: 7.4912x larger
The following not significant results are hidden, use -v to show them:
etree_generate.
yuri@einstein ~/benchmarks $ uname -a
Linux einstein.sprymix.net 4.4.0 #36 SMP Sun Jan 24 23:24:22 EST 2016 x86_64 Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz GenuineIntel GNU/Linux
yuri@einstein ~/benchmarks $ ../optpy/cpython/python -c 'import sys; print(sys.version)'
3.6.0a0 (default, Jan 26 2016, 19:29:01)
[GCC 4.9.3]
yuri@einstein ~/benchmarks $ cat /proc/meminfo | grep MemTotal
MemTotal: 12273460 kB
yuri@einstein ~/benchmarks $ python3.5 perf.py -b all ../opy/cpython/python ../optpy/cpython/python -r
INFO:root:Automatically selected timer: perf_counter
INFO:root:Skipping benchmark slowspitfire; not compatible with Python 3.6
INFO:root:Skipping benchmark hg_startup; not compatible with Python 3.6
INFO:root:Skipping benchmark bzr_startup; not compatible with Python 3.6
INFO:root:Skipping benchmark spambayes; not compatible with Python 3.6
INFO:root:Skipping benchmark html5lib; not compatible with Python 3.6
INFO:root:Skipping benchmark rietveld; not compatible with Python 3.6
INFO:root:Skipping benchmark pybench; not compatible with Python 3.6
INFO:root:Skipping benchmark html5lib_warmup; not compatible with Python 3.6
INFO:root:Skipping benchmark slowunpickle; not compatible with Python 3.6
INFO:root:Skipping benchmark slowpickle; not compatible with Python 3.6
[ 1/43] 2to3...
INFO:root:Running `../optpy/cpython/python lib3/2to3/2to3 -f all lib/2to3`
^[[A
^[[A
INFO:root:Running `../optpy/cpython/python lib3/2to3/2to3 -f all lib/2to3` 5 times
INFO:root:Running `../opy/cpython/python lib3/2to3/2to3 -f all lib/2to3`
INFO:root:Running `../opy/cpython/python lib3/2to3/2to3 -f all lib/2to3` 5 times
[ 2/43] call_method...
INFO:root:Running `../optpy/cpython/python performance/bm_call_method.py -n 300 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_call_method.py -n 300 --timer perf_counter`
[ 3/43] call_method_slots...
INFO:root:Running `../optpy/cpython/python performance/bm_call_method_slots.py -n 300 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_call_method_slots.py -n 300 --timer perf_counter`
[ 4/43] call_method_unknown...
INFO:root:Running `../optpy/cpython/python performance/bm_call_method_unknown.py -n 300 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_call_method_unknown.py -n 300 --timer perf_counter`
[ 5/43] call_simple...
INFO:root:Running `../optpy/cpython/python performance/bm_call_simple.py -n 300 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_call_simple.py -n 300 --timer perf_counter`
[ 6/43] chameleon_v2...
INFO:root:Running `../optpy/cpython/python performance/bm_chameleon_v2.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_chameleon_v2.py -n 100 --timer perf_counter`
[ 7/43] chaos...
INFO:root:Running `../optpy/cpython/python performance/bm_chaos.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_chaos.py -n 100 --timer perf_counter`
[ 8/43] django_v3...
INFO:root:Running `../optpy/cpython/python performance/bm_django_v3.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_django_v3.py -n 100 --timer perf_counter`
[ 9/43] etree_generate...
INFO:root:Running `../optpy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
INFO:root:Running `../opy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
[10/43] etree_iterparse...
INFO:root:Running `../optpy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
INFO:root:Running `../opy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
[11/43] etree_parse...
INFO:root:Running `../optpy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
INFO:root:Running `../opy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
[12/43] etree_process...
INFO:root:Running `../optpy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
INFO:root:Running `../opy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
[13/43] fannkuch...
INFO:root:Running `../optpy/cpython/python performance/bm_fannkuch.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_fannkuch.py -n 100 --timer perf_counter`
[14/43] fastpickle...
INFO:root:Running `../optpy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle`
INFO:root:Running `../opy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle`
[15/43] fastunpickle...
INFO:root:Running `../optpy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle`
INFO:root:Running `../opy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle`
[16/43] float...
INFO:root:Running `../optpy/cpython/python performance/bm_float.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_float.py -n 100 --timer perf_counter`
[17/43] formatted_logging...
INFO:root:Running `../optpy/cpython/python performance/bm_logging.py -n 100 --timer perf_counter formatted_output`
INFO:root:Running `../opy/cpython/python performance/bm_logging.py -n 100 --timer perf_counter formatted_output`
[18/43] go...
INFO:root:Running `../optpy/cpython/python performance/bm_go.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_go.py -n 100 --timer perf_counter`
[19/43] hexiom2...
INFO:root:Running `../optpy/cpython/python performance/bm_hexiom2.py -n 4 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_hexiom2.py -n 4 --timer perf_counter`
[20/43] json_dump_v2...
INFO:root:Running `../optpy/cpython/python performance/bm_json_v2.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_json_v2.py -n 100 --timer perf_counter`
[21/43] json_load...
INFO:root:Running `../optpy/cpython/python performance/bm_json.py -n 100 --timer perf_counter json_load`
INFO:root:Running `../opy/cpython/python performance/bm_json.py -n 100 --timer perf_counter json_load`
[22/43] mako_v2...
INFO:root:Running `../optpy/cpython/python performance/bm_mako_v2.py -n 1000 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_mako_v2.py -n 1000 --timer perf_counter`
[23/43] meteor_contest...
INFO:root:Running `../optpy/cpython/python performance/bm_meteor_contest.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_meteor_contest.py -n 100 --timer perf_counter`
[24/43] nbody...
INFO:root:Running `../optpy/cpython/python performance/bm_nbody.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_nbody.py -n 100 --timer perf_counter`
[25/43] normal_startup...
INFO:root:Running `../optpy/cpython/python -c ` 2000 times
INFO:root:Running `../opy/cpython/python -c ` 2000 times
[26/43] nqueens...
INFO:root:Running `../optpy/cpython/python performance/bm_nqueens.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_nqueens.py -n 100 --timer perf_counter`
[27/43] pathlib...
INFO:root:Running `../optpy/cpython/python performance/bm_pathlib.py -n 1000 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_pathlib.py -n 1000 --timer perf_counter`
[28/43] pickle_dict...
INFO:root:Running `../optpy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
INFO:root:Running `../opy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
[29/43] pickle_list...
INFO:root:Running `../optpy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_list`
INFO:root:Running `../opy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_list`
[30/43] pidigits...
INFO:root:Running `../optpy/cpython/python performance/bm_pidigits.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_pidigits.py -n 100 --timer perf_counter`
[31/43] raytrace...
INFO:root:Running `../optpy/cpython/python performance/bm_raytrace.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_raytrace.py -n 100 --timer perf_counter`
[32/43] regex_compile...
INFO:root:Running `../optpy/cpython/python performance/bm_regex_compile.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_regex_compile.py -n 100 --timer perf_counter`
[33/43] regex_effbot...
INFO:root:Running `../optpy/cpython/python performance/bm_regex_effbot.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_regex_effbot.py -n 100 --timer perf_counter`
[34/43] regex_v8...
INFO:root:Running `../optpy/cpython/python performance/bm_regex_v8.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_regex_v8.py -n 100 --timer perf_counter`
[35/43] richards...
INFO:root:Running `../optpy/cpython/python performance/bm_richards.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_richards.py -n 100 --timer perf_counter`
[36/43] silent_logging...
INFO:root:Running `../optpy/cpython/python performance/bm_logging.py -n 100 --timer perf_counter no_output`
INFO:root:Running `../opy/cpython/python performance/bm_logging.py -n 100 --timer perf_counter no_output`
[37/43] simple_logging...
INFO:root:Running `../optpy/cpython/python performance/bm_logging.py -n 100 --timer perf_counter simple_output`
INFO:root:Running `../opy/cpython/python performance/bm_logging.py -n 100 --timer perf_counter simple_output`
[38/43] spectral_norm...
INFO:root:Running `../optpy/cpython/python performance/bm_spectral_norm.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_spectral_norm.py -n 100 --timer perf_counter`
[39/43] startup_nosite...
INFO:root:Running `../optpy/cpython/python -S -c ` 4000 times
INFO:root:Running `../opy/cpython/python -S -c ` 4000 times
[40/43] telco...
INFO:root:Running `../optpy/cpython/python performance/bm_telco.py -n 100 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_telco.py -n 100 --timer perf_counter`
[41/43] tornado_http...
INFO:root:Running `../optpy/cpython/python performance/bm_tornado_http.py -n 200 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_tornado_http.py -n 200 --timer perf_counter`
[42/43] unpack_sequence...
INFO:root:Running `../optpy/cpython/python performance/bm_unpack_sequence.py -n 100000 --timer perf_counter`
INFO:root:Running `../opy/cpython/python performance/bm_unpack_sequence.py -n 100000 --timer perf_counter`
[43/43] unpickle_list...
INFO:root:Running `../optpy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle_list`
INFO:root:Running `../opy/cpython/python performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle_list`
Report on Linux einstein.sprymix.net 4.4.0 #36 SMP Sun Jan 24 23:24:22 EST 2016 x86_64 Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz
Total CPU cores: 8
### call_method ###
Min: 0.456945 -> 0.371404: 1.23x faster
Avg: 0.491895 -> 0.405299: 1.21x faster
Significant (t=117.40)
Stddev: 0.00854 -> 0.00950: 1.1129x larger
### call_method_slots ###
Min: 0.477989 -> 0.382400: 1.25x faster
Avg: 0.506644 -> 0.404459: 1.25x faster
Significant (t=168.26)
Stddev: 0.00765 -> 0.00722: 1.0599x smaller
### call_method_unknown ###
Min: 0.473865 -> 0.439151: 1.08x faster
Avg: 0.513037 -> 0.472235: 1.09x faster
Significant (t=48.22)
Stddev: 0.01082 -> 0.00988: 1.0952x smaller
### chameleon_v2 ###
Min: 7.291571 -> 6.618075: 1.10x faster
Avg: 7.438868 -> 6.763326: 1.10x faster
Significant (t=38.49)
Stddev: 0.12447 -> 0.12376: 1.0057x smaller
### django_v3 ###
Min: 0.794108 -> 0.741192: 1.07x faster
Avg: 0.845611 -> 0.782720: 1.08x faster
Significant (t=17.69)
Stddev: 0.01987 -> 0.02948: 1.4837x larger
### etree_generate ###
Min: 0.326624 -> 0.318477: 1.03x faster
Avg: 0.365514 -> 0.343407: 1.06x faster
Significant (t=8.91)
Stddev: 0.02153 -> 0.01233: 1.7462x smaller
### etree_process ###
Min: 0.282676 -> 0.289308: 1.02x slower
Avg: 0.300573 -> 0.308821: 1.03x slower
Significant (t=-8.50)
Stddev: 0.00713 -> 0.00659: 1.0824x smaller
### fastpickle ###
Min: 0.618099 -> 0.611043: 1.01x faster
Avg: 0.663858 -> 0.638272: 1.04x faster
Significant (t=9.28)
Stddev: 0.02253 -> 0.01588: 1.4192x smaller
### float ###
Min: 0.364891 -> 0.362816: 1.01x faster
Avg: 0.386998 -> 0.379311: 1.02x faster
Significant (t=6.05)
Stddev: 0.01011 -> 0.00771: 1.3118x smaller
### formatted_logging ###
Min: 0.477014 -> 0.452566: 1.05x faster
Avg: 0.509427 -> 0.470093: 1.08x faster
Significant (t=13.67)
Stddev: 0.02566 -> 0.01300: 1.9742x smaller
### hexiom2 ###
Min: 184.013615 -> 165.270194: 1.11x faster
Avg: 185.249155 -> 165.711424: 1.12x faster
Significant (t=40.54)
Stddev: 0.87807 -> 0.39760: 2.2084x smaller
### json_dump_v2 ###
Min: 3.672790 -> 3.477665: 1.06x faster
Avg: 3.746374 -> 3.558894: 1.05x faster
Significant (t=24.47)
Stddev: 0.05724 -> 0.05095: 1.1235x smaller
### meteor_contest ###
Min: 0.248246 -> 0.241223: 1.03x faster
Avg: 0.264064 -> 0.256743: 1.03x faster
Significant (t=6.14)
Stddev: 0.01016 -> 0.00623: 1.6307x smaller
### nbody ###
Min: 0.315921 -> 0.306385: 1.03x faster
Avg: 0.337762 -> 0.327050: 1.03x faster
Significant (t=8.86)
Stddev: 0.01012 -> 0.00662: 1.5290x smaller
### nqueens ###
Min: 0.331614 -> 0.319847: 1.04x faster
Avg: 0.349193 -> 0.336421: 1.04x faster
Significant (t=11.47)
Stddev: 0.00884 -> 0.00677: 1.3053x smaller
### pickle_dict ###
Min: 0.658437 -> 0.606916: 1.08x faster
Avg: 0.689543 -> 0.645957: 1.07x faster
Significant (t=18.12)
Stddev: 0.00954 -> 0.02208: 2.3146x larger
### raytrace ###
Min: 1.865489 -> 1.757074: 1.06x faster
Avg: 1.903279 -> 1.799936: 1.06x faster
Significant (t=23.89)
Stddev: 0.03469 -> 0.02584: 1.3426x smaller
### regex_compile ###
Min: 0.471344 -> 0.440253: 1.07x faster
Avg: 0.496311 -> 0.459949: 1.08x faster
Significant (t=18.48)
Stddev: 0.01769 -> 0.00861: 2.0553x smaller
### richards ###
Min: 0.231818 -> 0.226167: 1.02x faster
Avg: 0.252703 -> 0.239730: 1.05x faster
Significant (t=14.06)
Stddev: 0.00748 -> 0.00540: 1.3854x smaller
### silent_logging ###
Min: 0.096775 -> 0.089535: 1.08x faster
Avg: 0.104114 -> 0.097912: 1.06x faster
Significant (t=15.77)
Stddev: 0.00277 -> 0.00279: 1.0085x larger
### simple_logging ###
Min: 0.405943 -> 0.378784: 1.07x faster
Avg: 0.431760 -> 0.400531: 1.08x faster
Significant (t=22.69)
Stddev: 0.01068 -> 0.00868: 1.2305x smaller
### spectral_norm ###
Min: 0.416742 -> 0.374930: 1.11x faster
Avg: 0.444983 -> 0.395050: 1.13x faster
Significant (t=30.09)
Stddev: 0.01427 -> 0.00848: 1.6826x smaller
### telco ###
Min: 0.013147 -> 0.012649: 1.04x faster
Avg: 0.014861 -> 0.014088: 1.05x faster
Significant (t=7.89)
Stddev: 0.00051 -> 0.00084: 1.6354x larger
### tornado_http ###
Min: 0.337888 -> 0.331114: 1.02x faster
Avg: 0.359400 -> 0.348303: 1.03x faster
Significant (t=8.96)
Stddev: 0.01327 -> 0.01143: 1.1617x smaller
### unpack_sequence ###
Min: 0.000077 -> 0.000075: 1.03x faster
Avg: 0.000090 -> 0.000086: 1.05x faster
Significant (t=174.30)
Stddev: 0.00001 -> 0.00000: 1.4510x smaller
The following not significant results are hidden, use -v to show them:
2to3, call_simple, chaos, etree_iterparse, etree_parse, fannkuch, fastunpickle, go, json_load, mako_v2, normal_startup, pathlib, pickle_list, pidigits, regex_effbot, regex_v8, startup_nosite, unpickle_list.
=============== [separate runs]
yuri@einstein ~/benchmarks $ python3.5 perf.py -b etree ../opy/cpython/python ../optpy/cpython/python -r
INFO:root:Automatically selected timer: perf_counter
[1/4] etree_generate...
INFO:root:Running `../optpy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
INFO:root:Running `../opy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter generate`
[2/4] etree_iterparse...
INFO:root:Running `../optpy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
INFO:root:Running `../opy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
[3/4] etree_parse...
INFO:root:Running `../optpy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
INFO:root:Running `../opy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter parse`
[4/4] etree_process...
INFO:root:Running `../optpy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
INFO:root:Running `../opy/cpython/python performance/bm_elementtree.py -n 100 --timer perf_counter process`
Report on Linux einstein.sprymix.net 4.4.0 #36 SMP Sun Jan 24 23:24:22 EST 2016 x86_64 Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz
Total CPU cores: 8
### etree_generate ###
Min: 0.338071 -> 0.330549: 1.02x faster
Avg: 0.354316 -> 0.346609: 1.02x faster
Significant (t=9.02)
Stddev: 0.00626 -> 0.00582: 1.0759x smaller
### etree_iterparse ###
Min: 0.255521 -> 0.246000: 1.04x faster
Avg: 0.268329 -> 0.258412: 1.04x faster
Significant (t=10.66)
Stddev: 0.00779 -> 0.00508: 1.5331x smaller
### etree_process ###
Min: 0.295529 -> 0.292644: 1.01x faster
Avg: 0.307730 -> 0.320923: 1.04x slower
Significant (t=-11.67)
Stddev: 0.00588 -> 0.00966: 1.6433x larger
The following not significant results are hidden, use -v to show them:
etree_parse.
yury@ysmbp ~/dev/py/cpython-git (opcache2 $%) $ uname -a
Darwin ysmbp.local 15.2.0 Darwin Kernel Version 15.2.0: Fri Nov 13 19:56:56 PST 2015; root:xnu-3248.20.55~2/RELEASE_X86_64 x86_64
yury@ysmbp ~/dev/py/cpython-git (opcache2 $%) $ sysctl -n machdep.cpu.brand_string
Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz
yury@ysmbp ~/dev/py/cpython-git (opcache2 $%) $ ./python.exe -c 'import sys; print(sys.version)'
3.6.0a0 (default, Jan 26 2016, 19:27:03)
[GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)]
yury@ysmbp ~/dev/py/cpython-git (opcache2 $%) $ sysctl hw.memsize
hw.memsize: 17179869184
yury@ysmbp ~/dev/py/benchmarks $ python3.5 perf.py -b all,-tornado_http ../cpython/python.exe ../cpython-git/python.exe -r
INFO:root:Automatically selected timer: perf_counter
INFO:root:Skipping benchmark bzr_startup; not compatible with Python 3.6
INFO:root:Skipping benchmark slowpickle; not compatible with Python 3.6
INFO:root:Skipping benchmark slowspitfire; not compatible with Python 3.6
INFO:root:Skipping benchmark slowunpickle; not compatible with Python 3.6
INFO:root:Skipping benchmark spambayes; not compatible with Python 3.6
INFO:root:Skipping benchmark rietveld; not compatible with Python 3.6
INFO:root:Skipping benchmark hg_startup; not compatible with Python 3.6
INFO:root:Skipping benchmark pybench; not compatible with Python 3.6
[ 1/45] 2to3...
INFO:root:Running `../cpython-git/python.exe lib3/2to3/2to3 -f all lib/2to3`
INFO:root:Running `../cpython-git/python.exe lib3/2to3/2to3 -f all lib/2to3` 5 times
INFO:root:Running `../cpython/python.exe lib3/2to3/2to3 -f all lib/2to3`
INFO:root:Running `../cpython/python.exe lib3/2to3/2to3 -f all lib/2to3` 5 times
[ 2/45] call_c_method...
INFO:root:Running `../cpython-git/python.exe performance/bm_call_c_method.py -n 300 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_call_c_method.py -n 300 --timer perf_counter`
[ 3/45] call_method...
INFO:root:Running `../cpython-git/python.exe performance/bm_call_method.py -n 300 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_call_method.py -n 300 --timer perf_counter`
[ 4/45] call_method_slots...
INFO:root:Running `../cpython-git/python.exe performance/bm_call_method_slots.py -n 300 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_call_method_slots.py -n 300 --timer perf_counter`
[ 5/45] call_method_unknown...
INFO:root:Running `../cpython-git/python.exe performance/bm_call_method_unknown.py -n 300 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_call_method_unknown.py -n 300 --timer perf_counter`
^[[A
^[[A
[ 6/45] call_simple...
INFO:root:Running `../cpython-git/python.exe performance/bm_call_simple.py -n 300 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_call_simple.py -n 300 --timer perf_counter`
[ 7/45] chameleon_v2...
INFO:root:Running `../cpython-git/python.exe performance/bm_chameleon_v2.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_chameleon_v2.py -n 100 --timer perf_counter`
[ 8/45] chaos...
INFO:root:Running `../cpython-git/python.exe performance/bm_chaos.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_chaos.py -n 100 --timer perf_counter`
[ 9/45] django_v3...
INFO:root:Running `../cpython-git/python.exe performance/bm_django_v3.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_django_v3.py -n 100 --timer perf_counter`
[10/45] etree_generate...
INFO:root:Running `../cpython-git/python.exe performance/bm_elementtree.py -n 100 --timer perf_counter generate`
INFO:root:Running `../cpython/python.exe performance/bm_elementtree.py -n 100 --timer perf_counter generate`
[11/45] etree_iterparse...
INFO:root:Running `../cpython-git/python.exe performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
INFO:root:Running `../cpython/python.exe performance/bm_elementtree.py -n 100 --timer perf_counter iterparse`
[12/45] etree_parse...
INFO:root:Running `../cpython-git/python.exe performance/bm_elementtree.py -n 100 --timer perf_counter parse`
INFO:root:Running `../cpython/python.exe performance/bm_elementtree.py -n 100 --timer perf_counter parse`
[13/45] etree_process...
INFO:root:Running `../cpython-git/python.exe performance/bm_elementtree.py -n 100 --timer perf_counter process`
INFO:root:Running `../cpython/python.exe performance/bm_elementtree.py -n 100 --timer perf_counter process`
[14/45] fannkuch...
INFO:root:Running `../cpython-git/python.exe performance/bm_fannkuch.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_fannkuch.py -n 100 --timer perf_counter`
[15/45] fastpickle...
INFO:root:Running `../cpython-git/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle`
INFO:root:Running `../cpython/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle`
[16/45] fastunpickle...
INFO:root:Running `../cpython-git/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle`
INFO:root:Running `../cpython/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle`
[17/45] float...
INFO:root:Running `../cpython-git/python.exe performance/bm_float.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_float.py -n 100 --timer perf_counter`
[18/45] formatted_logging...
INFO:root:Running `../cpython-git/python.exe performance/bm_logging.py -n 100 --timer perf_counter formatted_output`
INFO:root:Running `../cpython/python.exe performance/bm_logging.py -n 100 --timer perf_counter formatted_output`
[19/45] go...
INFO:root:Running `../cpython-git/python.exe performance/bm_go.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_go.py -n 100 --timer perf_counter`
[20/45] hexiom2...
INFO:root:Running `../cpython-git/python.exe performance/bm_hexiom2.py -n 4 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_hexiom2.py -n 4 --timer perf_counter`
[21/45] html5lib...
INFO:root:Running `../cpython-git/python.exe performance/bm_html5lib.py -n 1`
INFO:root:Running `../cpython-git/python.exe performance/bm_html5lib.py -n 1` 10 times
INFO:root:Running `../cpython/python.exe performance/bm_html5lib.py -n 1`
INFO:root:Running `../cpython/python.exe performance/bm_html5lib.py -n 1` 10 times
[22/45] html5lib_warmup...
INFO:root:Running `../cpython-git/python.exe performance/bm_html5lib.py -n 10 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_html5lib.py -n 10 --timer perf_counter`
[23/45] json_dump_v2...
INFO:root:Running `../cpython-git/python.exe performance/bm_json_v2.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_json_v2.py -n 100 --timer perf_counter`
[24/45] json_load...
INFO:root:Running `../cpython-git/python.exe performance/bm_json.py -n 100 --timer perf_counter json_load`
INFO:root:Running `../cpython/python.exe performance/bm_json.py -n 100 --timer perf_counter json_load`
[25/45] mako_v2...
INFO:root:Running `../cpython-git/python.exe performance/bm_mako_v2.py -n 1000 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_mako_v2.py -n 1000 --timer perf_counter`
[26/45] meteor_contest...
INFO:root:Running `../cpython-git/python.exe performance/bm_meteor_contest.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_meteor_contest.py -n 100 --timer perf_counter`
[27/45] nbody...
INFO:root:Running `../cpython-git/python.exe performance/bm_nbody.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_nbody.py -n 100 --timer perf_counter`
[28/45] normal_startup...
INFO:root:Running `../cpython-git/python.exe -c ` 2000 times
INFO:root:Running `../cpython/python.exe -c ` 2000 times
[29/45] nqueens...
INFO:root:Running `../cpython-git/python.exe performance/bm_nqueens.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_nqueens.py -n 100 --timer perf_counter`
[30/45] pathlib...
INFO:root:Running `../cpython-git/python.exe performance/bm_pathlib.py -n 1000 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_pathlib.py -n 1000 --timer perf_counter`
[31/45] pickle_dict...
INFO:root:Running `../cpython-git/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
INFO:root:Running `../cpython/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_dict`
[32/45] pickle_list...
INFO:root:Running `../cpython-git/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_list`
INFO:root:Running `../cpython/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle pickle_list`
[33/45] pidigits...
INFO:root:Running `../cpython-git/python.exe performance/bm_pidigits.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_pidigits.py -n 100 --timer perf_counter`
[34/45] raytrace...
INFO:root:Running `../cpython-git/python.exe performance/bm_raytrace.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_raytrace.py -n 100 --timer perf_counter`
[35/45] regex_compile...
INFO:root:Running `../cpython-git/python.exe performance/bm_regex_compile.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_regex_compile.py -n 100 --timer perf_counter`
[36/45] regex_effbot...
INFO:root:Running `../cpython-git/python.exe performance/bm_regex_effbot.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_regex_effbot.py -n 100 --timer perf_counter`
[37/45] regex_v8...
INFO:root:Running `../cpython-git/python.exe performance/bm_regex_v8.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_regex_v8.py -n 100 --timer perf_counter`
[38/45] richards...
INFO:root:Running `../cpython-git/python.exe performance/bm_richards.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_richards.py -n 100 --timer perf_counter`
[39/45] silent_logging...
INFO:root:Running `../cpython-git/python.exe performance/bm_logging.py -n 100 --timer perf_counter no_output`
INFO:root:Running `../cpython/python.exe performance/bm_logging.py -n 100 --timer perf_counter no_output`
[40/45] simple_logging...
INFO:root:Running `../cpython-git/python.exe performance/bm_logging.py -n 100 --timer perf_counter simple_output`
INFO:root:Running `../cpython/python.exe performance/bm_logging.py -n 100 --timer perf_counter simple_output`
[41/45] spectral_norm...
INFO:root:Running `../cpython-git/python.exe performance/bm_spectral_norm.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_spectral_norm.py -n 100 --timer perf_counter`
[42/45] startup_nosite...
INFO:root:Running `../cpython-git/python.exe -S -c ` 4000 times
INFO:root:Running `../cpython/python.exe -S -c ` 4000 times
[43/45] telco...
INFO:root:Running `../cpython-git/python.exe performance/bm_telco.py -n 100 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_telco.py -n 100 --timer perf_counter`
[44/45] unpack_sequence...
INFO:root:Running `../cpython-git/python.exe performance/bm_unpack_sequence.py -n 100000 --timer perf_counter`
INFO:root:Running `../cpython/python.exe performance/bm_unpack_sequence.py -n 100000 --timer perf_counter`
[45/45] unpickle_list...
INFO:root:Running `../cpython-git/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle_list`
INFO:root:Running `../cpython/python.exe performance/bm_pickle.py -n 100 --timer perf_counter --use_cpickle unpickle_list`
Report on Darwin ysmbp.local 15.2.0 Darwin Kernel Version 15.2.0: Fri Nov 13 19:56:56 PST 2015; root:xnu-3248.20.55~2/RELEASE_X86_64 x86_64 i386
Total CPU cores: 8
### call_c_method ###
Min: 0.000143 -> 0.000129: 1.11x faster
Avg: 0.000169 -> 0.000131: 1.28x faster
Significant (t=17.56)
Stddev: 0.00004 -> 0.00001: 4.2080x smaller
### call_method ###
Min: 0.290276 -> 0.228430: 1.27x faster
Avg: 0.309836 -> 0.245849: 1.26x faster
Significant (t=84.31)
Stddev: 0.01038 -> 0.00806: 1.2875x smaller
### call_method_slots ###
Min: 0.290206 -> 0.222281: 1.31x faster
Avg: 0.316580 -> 0.240423: 1.32x faster
Significant (t=90.07)
Stddev: 0.01190 -> 0.00853: 1.3953x smaller
### call_method_unknown ###
Min: 0.290586 -> 0.271159: 1.07x faster
Avg: 0.314365 -> 0.296092: 1.06x faster
Significant (t=17.72)
Stddev: 0.01382 -> 0.01130: 1.2230x smaller
### call_simple ###
Min: 0.224076 -> 0.193530: 1.16x faster
Avg: 0.243908 -> 0.214306: 1.14x faster
Significant (t=19.11)
Stddev: 0.00905 -> 0.02525: 2.7916x larger
### chameleon_v2 ###
Min: 4.055300 -> 3.613572: 1.12x faster
Avg: 4.120764 -> 3.742761: 1.10x faster
Significant (t=28.13)
Stddev: 0.03622 -> 0.12939: 3.5718x larger
### django_v3 ###
Min: 0.397726 -> 0.378212: 1.05x faster
Avg: 0.410896 -> 0.391008: 1.05x faster
Significant (t=19.13)
Stddev: 0.00775 -> 0.00694: 1.1171x smaller
### etree_generate ###
Min: 0.199854 -> 0.193998: 1.03x faster
Avg: 0.207658 -> 0.201418: 1.03x faster
Significant (t=9.54)
Stddev: 0.00475 -> 0.00450: 1.0542x smaller
### etree_iterparse ###
Min: 0.174193 -> 0.167087: 1.04x faster
Avg: 0.183795 -> 0.175973: 1.04x faster
Significant (t=11.52)
Stddev: 0.00525 -> 0.00430: 1.2203x smaller
### etree_process ###
Min: 0.156048 -> 0.162202: 1.04x slower
Avg: 0.163529 -> 0.169467: 1.04x slower
Significant (t=-8.80)
Stddev: 0.00465 -> 0.00489: 1.0515x larger
### formatted_logging ###
Min: 0.221265 -> 0.210407: 1.05x faster
Avg: 0.232169 -> 0.218271: 1.06x faster
Significant (t=17.80)
Stddev: 0.00538 -> 0.00566: 1.0507x larger
### hexiom2 ###
Min: 121.527794 -> 112.407943: 1.08x faster
Avg: 128.085361 -> 112.819916: 1.14x faster
Significant (t=6.92)
Stddev: 4.40054 -> 0.35493: 12.3985x smaller
### html5lib ###
Min: 5.826512 -> 5.765984: 1.01x faster
Avg: 5.949893 -> 5.826560: 1.02x faster
Significant (t=2.76)
Stddev: 0.12268 -> 0.06968: 1.7607x smaller
### html5lib_warmup ###
Min: 5.860906 -> 5.626768: 1.04x faster
Avg: 5.923322 -> 5.719347: 1.04x faster
Significant (t=6.28)
Stddev: 0.05197 -> 0.08868: 1.7063x larger
### meteor_contest ###
Min: 0.180304 -> 0.173935: 1.04x faster
Avg: 0.187251 -> 0.180244: 1.04x faster
Significant (t=12.61)
Stddev: 0.00408 -> 0.00377: 1.0847x smaller
### nbody ###
Min: 0.206977 -> 0.211318: 1.02x slower
Avg: 0.213664 -> 0.218695: 1.02x slower
Significant (t=-7.54)
Stddev: 0.00461 -> 0.00482: 1.0437x larger
### pickle_dict ###
Min: 0.415269 -> 0.427307: 1.03x slower
Avg: 0.428963 -> 0.440879: 1.03x slower
Significant (t=-12.32)
Stddev: 0.00701 -> 0.00667: 1.0506x smaller
### pickle_list ###
Min: 0.249852 -> 0.257119: 1.03x slower
Avg: 0.259777 -> 0.266723: 1.03x slower
Significant (t=-9.42)
Stddev: 0.00530 -> 0.00513: 1.0341x smaller
### silent_logging ###
Min: 0.066535 -> 0.060981: 1.09x faster
Avg: 0.069761 -> 0.062966: 1.11x faster
Significant (t=18.42)
Stddev: 0.00288 -> 0.00231: 1.2486x smaller
### simple_logging ###
Min: 0.193298 -> 0.185675: 1.04x faster
Avg: 0.200990 -> 0.194375: 1.03x faster
Significant (t=10.06)
Stddev: 0.00415 -> 0.00511: 1.2313x larger
The following not significant results are hidden, use -v to show them:
2to3, chaos, etree_parse, fannkuch, fastpickle, fastunpickle, float, go, json_dump_v2, json_load, mako_v2, normal_startup, nqueens, pathlib, pidigits, raytrace, regex_compile, regex_effbot, regex_v8, richards, spectral_norm, startup_nosite, telco, unpack_sequence, unpickle_list.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment