Python performance¶
Codespeed websites¶
speed.python.org: CPython benchmarks, run performance and (tobami’s) codespeed
speed.pypy.org: PyPy benchmarks, run PyPy benchmarks
speed.pyston.org: Pyston benchmarks, run pyston-perf
Projects¶
Python benchmarks:
performance (GitHub project): Python benchmark suite
perf (GitHub project): Python module to run, analyze and compare benchmarks
performance_results: Results of the of performance benchmark suite
pymicrobench: Collection of Python microbenchmarks written for CPython.
PyPy benchmarks: PyPy benchmark suite
Codespeed (tobami’s flavor): Django application to explose benchmark results. Pages: Homepage, Changes, Timeline, Compare.
pyston-perf: Pyston benchmark suite
Other Python Benchmarks:
Old deprecated projects:
benchmarks: the old and deprecated Python benchmark suite
Mailing list¶
Old Python benchmarks¶
The following benchmarks were removed from pyperformance:
bm_rietveld.py: use Google AppEngine and Rietveld application which are not available on PyPI
bm_spitfire.py: Spitfire project is not available on PyPI
bm_threading.py (
threading_iterative_count
,threading_threaded_count
)
Zero copy¶
Python3:
offset = 0
view = memoryview(large_data)
while True:
chunk = view[offset:offset + 4096]
offset += file.write(chunk)
This copy creates views on large_data
without copying bytes, no bytes is
copied in memory.