/Tools/pybench/Dict.py
http://unladen-swallow.googlecode.com/ · Python · 504 lines · 406 code · 98 blank · 0 comment · 10 complexity · f36a69a49d2e0fcb47d260059a0d39ea MD5 · raw file
- from pybench import Test
- class DictCreation(Test):
- version = 2.0
- operations = 5*(5 + 5)
- rounds = 80000
- def test(self):
- for i in xrange(self.rounds):
- d1 = {}
- d2 = {}
- d3 = {}
- d4 = {}
- d5 = {}
- d1 = {1:2,3:4,5:6}
- d2 = {2:3,4:5,6:7}
- d3 = {3:4,5:6,7:8}
- d4 = {4:5,6:7,8:9}
- d5 = {6:7,8:9,10:11}
- d1 = {}
- d2 = {}
- d3 = {}
- d4 = {}
- d5 = {}
- d1 = {1:2,3:4,5:6}
- d2 = {2:3,4:5,6:7}
- d3 = {3:4,5:6,7:8}
- d4 = {4:5,6:7,8:9}
- d5 = {6:7,8:9,10:11}
- d1 = {}
- d2 = {}
- d3 = {}
- d4 = {}
- d5 = {}
- d1 = {1:2,3:4,5:6}
- d2 = {2:3,4:5,6:7}
- d3 = {3:4,5:6,7:8}
- d4 = {4:5,6:7,8:9}
- d5 = {6:7,8:9,10:11}
- d1 = {}
- d2 = {}
- d3 = {}
- d4 = {}
- d5 = {}
- d1 = {1:2,3:4,5:6}
- d2 = {2:3,4:5,6:7}
- d3 = {3:4,5:6,7:8}
- d4 = {4:5,6:7,8:9}
- d5 = {6:7,8:9,10:11}
- d1 = {}
- d2 = {}
- d3 = {}
- d4 = {}
- d5 = {}
- d1 = {1:2,3:4,5:6}
- d2 = {2:3,4:5,6:7}
- d3 = {3:4,5:6,7:8}
- d4 = {4:5,6:7,8:9}
- d5 = {6:7,8:9,10:11}
- def calibrate(self):
- for i in xrange(self.rounds):
- pass
- class DictWithStringKeys(Test):
- version = 2.0
- operations = 5*(6 + 6)
- rounds = 200000
- def test(self):
- d = {}
- for i in xrange(self.rounds):
- d['abc'] = 1
- d['def'] = 2
- d['ghi'] = 3
- d['jkl'] = 4
- d['mno'] = 5
- d['pqr'] = 6
- d['abc']
- d['def']
- d['ghi']
- d['jkl']
- d['mno']
- d['pqr']
- d['abc'] = 1
- d['def'] = 2
- d['ghi'] = 3
- d['jkl'] = 4
- d['mno'] = 5
- d['pqr'] = 6
- d['abc']
- d['def']
- d['ghi']
- d['jkl']
- d['mno']
- d['pqr']
- d['abc'] = 1
- d['def'] = 2
- d['ghi'] = 3
- d['jkl'] = 4
- d['mno'] = 5
- d['pqr'] = 6
- d['abc']
- d['def']
- d['ghi']
- d['jkl']
- d['mno']
- d['pqr']
- d['abc'] = 1
- d['def'] = 2
- d['ghi'] = 3
- d['jkl'] = 4
- d['mno'] = 5
- d['pqr'] = 6
- d['abc']
- d['def']
- d['ghi']
- d['jkl']
- d['mno']
- d['pqr']
- d['abc'] = 1
- d['def'] = 2
- d['ghi'] = 3
- d['jkl'] = 4
- d['mno'] = 5
- d['pqr'] = 6
- d['abc']
- d['def']
- d['ghi']
- d['jkl']
- d['mno']
- d['pqr']
- def calibrate(self):
- d = {}
- for i in xrange(self.rounds):
- pass
- class DictWithFloatKeys(Test):
- version = 2.0
- operations = 5*(6 + 6)
- rounds = 150000
- def test(self):
- d = {}
- for i in xrange(self.rounds):
- d[1.234] = 1
- d[2.345] = 2
- d[3.456] = 3
- d[4.567] = 4
- d[5.678] = 5
- d[6.789] = 6
- d[1.234]
- d[2.345]
- d[3.456]
- d[4.567]
- d[5.678]
- d[6.789]
- d[1.234] = 1
- d[2.345] = 2
- d[3.456] = 3
- d[4.567] = 4
- d[5.678] = 5
- d[6.789] = 6
- d[1.234]
- d[2.345]
- d[3.456]
- d[4.567]
- d[5.678]
- d[6.789]
- d[1.234] = 1
- d[2.345] = 2
- d[3.456] = 3
- d[4.567] = 4
- d[5.678] = 5
- d[6.789] = 6
- d[1.234]
- d[2.345]
- d[3.456]
- d[4.567]
- d[5.678]
- d[6.789]
- d[1.234] = 1
- d[2.345] = 2
- d[3.456] = 3
- d[4.567] = 4
- d[5.678] = 5
- d[6.789] = 6
- d[1.234]
- d[2.345]
- d[3.456]
- d[4.567]
- d[5.678]
- d[6.789]
- d[1.234] = 1
- d[2.345] = 2
- d[3.456] = 3
- d[4.567] = 4
- d[5.678] = 5
- d[6.789] = 6
- d[1.234]
- d[2.345]
- d[3.456]
- d[4.567]
- d[5.678]
- d[6.789]
- def calibrate(self):
- d = {}
- for i in xrange(self.rounds):
- pass
- class DictWithIntegerKeys(Test):
- version = 2.0
- operations = 5*(6 + 6)
- rounds = 200000
- def test(self):
- d = {}
- for i in xrange(self.rounds):
- d[1] = 1
- d[2] = 2
- d[3] = 3
- d[4] = 4
- d[5] = 5
- d[6] = 6
- d[1]
- d[2]
- d[3]
- d[4]
- d[5]
- d[6]
- d[1] = 1
- d[2] = 2
- d[3] = 3
- d[4] = 4
- d[5] = 5
- d[6] = 6
- d[1]
- d[2]
- d[3]
- d[4]
- d[5]
- d[6]
- d[1] = 1
- d[2] = 2
- d[3] = 3
- d[4] = 4
- d[5] = 5
- d[6] = 6
- d[1]
- d[2]
- d[3]
- d[4]
- d[5]
- d[6]
- d[1] = 1
- d[2] = 2
- d[3] = 3
- d[4] = 4
- d[5] = 5
- d[6] = 6
- d[1]
- d[2]
- d[3]
- d[4]
- d[5]
- d[6]
- d[1] = 1
- d[2] = 2
- d[3] = 3
- d[4] = 4
- d[5] = 5
- d[6] = 6
- d[1]
- d[2]
- d[3]
- d[4]
- d[5]
- d[6]
- def calibrate(self):
- d = {}
- for i in xrange(self.rounds):
- pass
- class SimpleDictManipulation(Test):
- version = 2.0
- operations = 5*(6 + 6 + 6 + 6)
- rounds = 100000
- def test(self):
- d = {}
- has_key = d.has_key
- for i in xrange(self.rounds):
- d[0] = 3
- d[1] = 4
- d[2] = 5
- d[3] = 3
- d[4] = 4
- d[5] = 5
- x = d[0]
- x = d[1]
- x = d[2]
- x = d[3]
- x = d[4]
- x = d[5]
- has_key(0)
- has_key(2)
- has_key(4)
- has_key(6)
- has_key(8)
- has_key(10)
- del d[0]
- del d[1]
- del d[2]
- del d[3]
- del d[4]
- del d[5]
- d[0] = 3
- d[1] = 4
- d[2] = 5
- d[3] = 3
- d[4] = 4
- d[5] = 5
- x = d[0]
- x = d[1]
- x = d[2]
- x = d[3]
- x = d[4]
- x = d[5]
- has_key(0)
- has_key(2)
- has_key(4)
- has_key(6)
- has_key(8)
- has_key(10)
- del d[0]
- del d[1]
- del d[2]
- del d[3]
- del d[4]
- del d[5]
- d[0] = 3
- d[1] = 4
- d[2] = 5
- d[3] = 3
- d[4] = 4
- d[5] = 5
- x = d[0]
- x = d[1]
- x = d[2]
- x = d[3]
- x = d[4]
- x = d[5]
- has_key(0)
- has_key(2)
- has_key(4)
- has_key(6)
- has_key(8)
- has_key(10)
- del d[0]
- del d[1]
- del d[2]
- del d[3]
- del d[4]
- del d[5]
- d[0] = 3
- d[1] = 4
- d[2] = 5
- d[3] = 3
- d[4] = 4
- d[5] = 5
- x = d[0]
- x = d[1]
- x = d[2]
- x = d[3]
- x = d[4]
- x = d[5]
- has_key(0)
- has_key(2)
- has_key(4)
- has_key(6)
- has_key(8)
- has_key(10)
- del d[0]
- del d[1]
- del d[2]
- del d[3]
- del d[4]
- del d[5]
- d[0] = 3
- d[1] = 4
- d[2] = 5
- d[3] = 3
- d[4] = 4
- d[5] = 5
- x = d[0]
- x = d[1]
- x = d[2]
- x = d[3]
- x = d[4]
- x = d[5]
- has_key(0)
- has_key(2)
- has_key(4)
- has_key(6)
- has_key(8)
- has_key(10)
- del d[0]
- del d[1]
- del d[2]
- del d[3]
- del d[4]
- del d[5]
- def calibrate(self):
- d = {}
- has_key = d.has_key
- for i in xrange(self.rounds):
- pass