Mercurial > cpython-lru_cache-weakref
view Tools/pybench/Arithmetic.py @ 58925:eecf1bef052d 2.6
Merged revisions 78207 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78207 | ezio.melotti | 2010-02-17 01:26:09 +0200 (Wed, 17 Feb 2010) | 1 line
#7930: fix stripid
........
| author | Ezio Melotti <ezio.melotti@gmail.com> |
|---|---|
| date | Tue, 16 Feb 2010 23:29:44 +0000 |
| parents | 2167105123e4 |
| children |
line wrap: on
line source
from pybench import Test class SimpleIntegerArithmetic(Test): version = 2.0 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 = 2.0 operations = 5 * (3 + 5 + 5 + 3 + 3 + 3) rounds = 120000 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 = 2.0 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 = 2.0 operations = 5 * (3 + 5 + 5 + 3 + 3 + 3) rounds = 60000 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 = 2.0 operations = 5 * (3 + 5 + 5 + 3 + 3 + 3) rounds = 80000 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
