diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2014-06-02 12:18:15 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2014-06-02 12:18:15 (GMT) |
commit | f849f46487dd505706c0150ca1967f7031488dfc (patch) | |
tree | 4d2ba9ecc3a3464e5b6da69fa7919b3e411d730e /Lib | |
parent | 5a1bb4e0809e6cc1468138fe788ce687e3d8d8f4 (diff) | |
parent | d4d39c761cb4856da8958b2826d0ade6fe1d8539 (diff) | |
download | cpython-f849f46487dd505706c0150ca1967f7031488dfc.zip cpython-f849f46487dd505706c0150ca1967f7031488dfc.tar.gz cpython-f849f46487dd505706c0150ca1967f7031488dfc.tar.bz2 |
(Merge 3.4) Issue #21634: Fix pystone micro-benchmark: use floor division
instead of true division to benchmark integers instead of floating point
numbers. Set pystone version to 1.2. Patch written by Lennart Regebro.
Diffstat (limited to 'Lib')
-rwxr-xr-x | Lib/test/pystone.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/Lib/test/pystone.py b/Lib/test/pystone.py index d7f1ec9..a41f1e5 100755 --- a/Lib/test/pystone.py +++ b/Lib/test/pystone.py @@ -3,7 +3,7 @@ """ "PYSTONE" Benchmark Program -Version: Python/1.1 (corresponds to C/1.1 plus 2 Pystone fixes) +Version: Python/1.2 (corresponds to C/1.1 plus 3 Pystone fixes) Author: Reinhold P. Weicker, CACM Vol 27, No 10, 10/84 pg. 1013. @@ -30,13 +30,20 @@ Version History: percent faster than version 1.0, so benchmark figures of different versions can't be compared directly. + Version 1.2 changes the division to floor division. + + Under Python 3 version 1.1 would use the normal division + operator, resulting in some of the operations mistakenly + yielding floats. Version 1.2 instead uses floor division + making the benchmark a integer benchmark again. + """ LOOPS = 50000 from time import clock -__version__ = "1.1" +__version__ = "1.2" [Ident1, Ident2, Ident3, Ident4, Ident5] = range(1, 6) @@ -123,7 +130,7 @@ def Proc0(loops=LOOPS): EnumLoc = Proc6(Ident1) CharIndex = chr(ord(CharIndex)+1) IntLoc3 = IntLoc2 * IntLoc1 - IntLoc2 = IntLoc3 / IntLoc1 + IntLoc2 = IntLoc3 // IntLoc1 IntLoc2 = 7 * (IntLoc3 - IntLoc2) - IntLoc1 IntLoc1 = Proc2(IntLoc1) |