mirror of
https://github.com/python/cpython.git
synced 2025-09-26 18:29:57 +00:00
Adding pybench 1.3 to the Tools/ directory.
This commit is contained in:
parent
79cdce35de
commit
c311f641e4
20 changed files with 8164 additions and 0 deletions
778
Tools/pybench/Arithmetic.py
Normal file
778
Tools/pybench/Arithmetic.py
Normal file
|
@ -0,0 +1,778 @@
|
|||
from pybench import Test
|
||||
|
||||
class SimpleIntegerArithmetic(Test):
|
||||
|
||||
version = 0.3
|
||||
operations = 5 * (3 + 5 + 5 + 3 + 3 + 3)
|
||||
rounds = 120000
|
||||
|
||||
def test(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
def calibrate(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
pass
|
||||
|
||||
class SimpleFloatArithmetic(Test):
|
||||
|
||||
version = 0.3
|
||||
operations = 5 * (3 + 5 + 5 + 3 + 3 + 3)
|
||||
rounds = 100000
|
||||
|
||||
def test(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
|
||||
a = 2.1
|
||||
b = 3.3332
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2.1
|
||||
b = 3.3332
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2.1
|
||||
b = 3.3332
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2.1
|
||||
b = 3.3332
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2.1
|
||||
b = 3.3332
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
def calibrate(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
pass
|
||||
|
||||
class SimpleIntFloatArithmetic(Test):
|
||||
|
||||
version = 0.3
|
||||
operations = 5 * (3 + 5 + 5 + 3 + 3 + 3)
|
||||
rounds = 120000
|
||||
|
||||
def test(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2
|
||||
b = 3
|
||||
c = 3.14159
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
def calibrate(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
pass
|
||||
|
||||
|
||||
class SimpleLongArithmetic(Test):
|
||||
|
||||
version = 0.3
|
||||
operations = 5 * (3 + 5 + 5 + 3 + 3 + 3)
|
||||
rounds = 30000
|
||||
|
||||
def test(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
|
||||
a = 2220001L
|
||||
b = 100001L
|
||||
c = 30005L
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2220001L
|
||||
b = 100001L
|
||||
c = 30005L
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2220001L
|
||||
b = 100001L
|
||||
c = 30005L
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2220001L
|
||||
b = 100001L
|
||||
c = 30005L
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2220001L
|
||||
b = 100001L
|
||||
c = 30005L
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
def calibrate(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
pass
|
||||
|
||||
class SimpleComplexArithmetic(Test):
|
||||
|
||||
version = 0.3
|
||||
operations = 5 * (3 + 5 + 5 + 3 + 3 + 3)
|
||||
rounds = 40000
|
||||
|
||||
def test(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
|
||||
a = 2 + 3j
|
||||
b = 2.5 + 4.5j
|
||||
c = 1.2 + 6.2j
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2 + 3j
|
||||
b = 2.5 + 4.5j
|
||||
c = 1.2 + 6.2j
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2 + 3j
|
||||
b = 2.5 + 4.5j
|
||||
c = 1.2 + 6.2j
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2 + 3j
|
||||
b = 2.5 + 4.5j
|
||||
c = 1.2 + 6.2j
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
a = 2 + 3j
|
||||
b = 2.5 + 4.5j
|
||||
c = 1.2 + 6.2j
|
||||
|
||||
c = a + b
|
||||
c = b + c
|
||||
c = c + a
|
||||
c = a + b
|
||||
c = b + c
|
||||
|
||||
c = c - a
|
||||
c = a - b
|
||||
c = b - c
|
||||
c = c - a
|
||||
c = b - c
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
c = a * b
|
||||
c = b * a
|
||||
c = c * b
|
||||
|
||||
c = a / b
|
||||
c = b / a
|
||||
c = c / b
|
||||
|
||||
def calibrate(self):
|
||||
|
||||
for i in xrange(self.rounds):
|
||||
pass
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue