STINNER Victor added the comment: pybench results on dict_version-8.patch with CPU isolation: http://haypo-notes.readthedocs.org/microbenchmark.html
As usual, I'm very skeptical on the pybench results which almost look like noise. I don't understand how my change can make any operation *faster*, whereas some benchmarks are faster with the patch... Dict microbenchmarks: DictCreation: 38ms 36ms +4.8% 39ms 37ms +3.9% DictWithFloatKeys: 40ms 40ms -0.8% 40ms 40ms -0.4% DictWithIntegerKeys: 33ms 31ms +7.2% 33ms 31ms +7.6% DictWithStringKeys: 29ms 28ms +0.4% 29ms 29ms +0.7% SimpleDictManipulation: 59ms 59ms -0.4% 59ms 59ms -0.4% Full output: $ ./python.version Tools/pybench/pybench.py -f pybench.version $ ./python.orig Tools/pybench/pybench.py -f pybench.orig $ ./python.orig Tools/pybench/pybench.py -s pybench.version -c pybench.orig ------------------------------------------------------------------------------- PYBENCH 2.1 ------------------------------------------------------------------------------- * using CPython 3.6.0a0 (default:e281a57d5b29, Apr 19 2016, 12:30:36) [GCC 5.3.1 20151207 (Red Hat 5.3.1-2)] * disabled garbage collection * system check interval set to maximum: 2147483647 * using timer: time.perf_counter * timer: resolution=1e-09, implementation=clock_gettime(CLOCK_MONOTONIC) ------------------------------------------------------------------------------- Benchmark: pybench.version ------------------------------------------------------------------------------- Rounds: 10 Warp: 10 Timer: time.perf_counter Machine Details: Platform ID: Linux-4.4.4-301.fc23.x86_64-x86_64-with-fedora-23-Twenty_Three Processor: x86_64 Python: Implementation: CPython Executable: /home/haypo/prog/python/default/python.version Version: 3.6.0a0 Compiler: GCC 5.3.1 20151207 (Red Hat 5.3.1-2) Bits: 64bit Build: Apr 19 2016 12:29:16 (#default:e281a57d5b29+) Unicode: UCS4 ------------------------------------------------------------------------------- Comparing with: pybench.orig ------------------------------------------------------------------------------- Rounds: 10 Warp: 10 Timer: time.perf_counter Machine Details: Platform ID: Linux-4.4.4-301.fc23.x86_64-x86_64-with-fedora-23-Twenty_Three Processor: x86_64 Python: Implementation: CPython Executable: /home/haypo/prog/python/default/python.orig Version: 3.6.0a0 Compiler: GCC 5.3.1 20151207 (Red Hat 5.3.1-2) Bits: 64bit Build: Apr 19 2016 12:30:36 (#default:e281a57d5b29) Unicode: UCS4 Test minimum run-time average run-time this other diff this other diff ------------------------------------------------------------------------------- BuiltinFunctionCalls: 49ms 50ms -1.3% 49ms 50ms -1.2% BuiltinMethodLookup: 26ms 26ms -0.8% 26ms 27ms -1.2% CompareFloats: 29ms 30ms -2.0% 29ms 30ms -1.9% CompareFloatsIntegers: 39ms 39ms +1.4% 39ms 39ms +1.5% CompareIntegers: 43ms 43ms -1.1% 43ms 43ms -1.1% CompareInternedStrings: 28ms 28ms -0.2% 28ms 28ms -0.3% CompareLongs: 25ms 25ms +2.8% 25ms 25ms +2.9% CompareStrings: 26ms 27ms -0.8% 26ms 27ms -1.6% ComplexPythonFunctionCalls: 44ms 44ms -1.6% 44ms 45ms -1.6% ConcatStrings: 35ms 33ms +6.4% 35ms 33ms +6.1% CreateInstances: 49ms 48ms +2.6% 50ms 49ms +1.8% CreateNewInstances: 37ms 36ms +2.5% 37ms 36ms +2.2% CreateStringsWithConcat: 65ms 63ms +3.3% 66ms 64ms +2.9% DictCreation: 38ms 36ms +4.8% 39ms 37ms +3.9% DictWithFloatKeys: 40ms 40ms -0.8% 40ms 40ms -0.4% DictWithIntegerKeys: 33ms 31ms +7.2% 33ms 31ms +7.6% DictWithStringKeys: 29ms 28ms +0.4% 29ms 29ms +0.7% ForLoops: 25ms 25ms -0.4% 26ms 26ms -0.3% IfThenElse: 37ms 35ms +3.3% 37ms 36ms +3.0% ListSlicing: 39ms 38ms +0.3% 39ms 39ms +0.0% NestedForLoops: 40ms 40ms +0.1% 40ms 40ms -0.0% NestedListComprehensions: 41ms 42ms -0.2% 42ms 42ms -0.9% NormalClassAttribute: 82ms 78ms +4.0% 82ms 79ms +3.8% NormalInstanceAttribute: 43ms 42ms +1.9% 44ms 43ms +1.8% PythonFunctionCalls: 40ms 42ms -5.0% 41ms 43ms -4.8% PythonMethodCalls: 51ms 52ms -1.1% 51ms 52ms -0.8% Recursion: 69ms 72ms -4.8% 69ms 73ms -4.7% SecondImport: 37ms 38ms -0.1% 37ms 38ms -0.1% SecondPackageImport: 40ms 39ms +1.9% 40ms 39ms +1.6% SecondSubmoduleImport: 96ms 97ms -1.0% 96ms 97ms -1.1% SimpleComplexArithmetic: 28ms 27ms +1.7% 29ms 28ms +1.9% SimpleDictManipulation: 59ms 59ms -0.4% 59ms 59ms -0.4% SimpleFloatArithmetic: 27ms 27ms +2.2% 27ms 27ms +2.3% SimpleIntFloatArithmetic: 31ms 31ms +1.6% 31ms 31ms +1.7% SimpleIntegerArithmetic: 31ms 31ms +0.8% 31ms 31ms +0.5% SimpleListComprehensions: 33ms 33ms +0.2% 33ms 33ms +0.4% SimpleListManipulation: 31ms 31ms -0.0% 32ms 32ms -1.5% SimpleLongArithmetic: 21ms 22ms -2.5% 22ms 22ms -1.8% SmallLists: 43ms 44ms -3.3% 43ms 44ms -3.5% SmallTuples: 51ms 53ms -2.9% 52ms 54ms -3.6% SpecialClassAttribute: 80ms 81ms -1.0% 80ms 81ms -1.1% SpecialInstanceAttribute: 42ms 42ms -0.5% 42ms 42ms -0.7% StringMappings: 87ms 86ms +0.8% 87ms 86ms +0.9% StringPredicates: 53ms 53ms +0.3% 53ms 53ms +0.2% StringSlicing: 48ms 49ms -1.3% 48ms 49ms -0.8% TryExcept: 25ms 25ms +0.6% 25ms 25ms +0.7% TryFinally: 35ms 35ms +1.1% 36ms 35ms +0.7% TryRaiseExcept: 13ms 13ms -0.5% 13ms 13ms -0.6% TupleSlicing: 46ms 46ms +0.2% 48ms 50ms -3.2% WithFinally: 54ms 53ms +0.8% 54ms 54ms +0.7% WithRaiseExcept: 44ms 43ms +2.8% 44ms 43ms +2.7% ------------------------------------------------------------------------------- Totals: 2156ms 2150ms +0.3% 2171ms 2169ms +0.1% (this=pybench.version, other=pybench.orig) ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue26058> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com