Performance 0.3 released with 10 new benchmarks
Hi,
I just released performance 0.3, the Python benchmark suite, with 10 new benchmarks from the PyPy benchmark suite: https://github.com/python/performance
Version 0.3.0 changelog.
New benchmarks:
- Add
crypto_pyaes
: Benchmark a pure-Python implementation of the AES block-cipher in CTR mode using the pyaes module (version 1.6.0). Addpyaes
dependency. - Add
sympy
: Benchmark on SymPy. Addscipy
dependency. - Add
scimark
benchmark - Add
deltablue
: DeltaBlue benchmark - Add
dulwich_log
: Iterate on commits of the asyncio Git repository using the Dulwich module. Adddulwich
(andmpmath
) dependencies. - Add
pyflate
: Pyflate benchmark, tar/bzip2 decompressor in pure Python - Add
sqlite_synth
benchmark: Benchmark Python aggregate for SQLite - Add
genshi
benchmark: Render template to XML or plain text using the Genshi module. AddGenshi
dependency. - Add
sqlalchemy_declarative
andsqlalchemy_imperative
benchmarks: SQLAlchemy Declarative and Imperative benchmarks using SQLite. AddSQLAlchemy
dependency.
Enhancements:
compare
command now fails if the performance versions are differentnbody
: add--reference
and--iterations
command line options.chaos
: add--width
,--height
,--thickness
,--filename
and--rng-seed
command line optionsdjango_template
: add--table-size
command line optionjson_dumps
: add--cases
command line optionpidigits
: add--digits
command line optionraytrace
: add--width
,--height
and--filename
command line options- Port
html5lib
benchmark to Python 3 - Enable
pickle_pure_python
andunpickle_pure_python
on Python 3 (code was already compatible with Python 3) - Creating the virtual environment doesn't inherit environment variables
(especially
PYTHONPATH
) by default anymore:--inherit-environ
command line option must now be used explicitly.
Bugfixes:
chaos
benchmark now also reset therandom
module at each sample to get more reproductible benchmark results- Logging benchmarks now truncate the in-memory stream before each benchmark run
Rename benchmarks:
Rename benchmarks to get a consistent name between the command line and benchmark name in the JSON file.
Rename pickle benchmarks:
slowpickle
becomespickle_pure_python
slowunpickle
becomesunpickle_pure_python
fastpickle
becomespickle
fastunpickle
becomesunpickle
Rename ElementTree benchmarks: replace
etree_
prefix withxml_etree_
.Rename
hexiom2
tohexiom_level25
and explicitly pass--level=25
parameterRename
json_load
tojson_loads
Rename
json_dump_v2
tojson_dumps
(and remove the deprecatedjson_dump
benchmark)Rename
normal_startup
topython_startup
, andstartup_nosite
topython_startup_no_site
Rename
threaded_count
tothreading_threaded_count
, renameiterative_count
tothreading_iterative_count
Rename logging benchmarks:
silent_logging
tologging_silent
simple_logging
tologging_simple
formatted_logging
tologging_format
Minor changes:
- Update dependencies
- Remove broken
--args
command line option.
Victor
participants (1)
-
Victor Stinner