diff options
author | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
commit | 458120dd40db6b4df55a4e96b650e16798ef06a0 (patch) | |
tree | 8f82685be24fef97e715c6f5ca4c68d34d5074ee /sys/src/cmd/python/Tools/pybench/Lists.py | |
parent | 3a742c699f6806c1145aea5149bf15de15a0afd7 (diff) |
add hg and python
Diffstat (limited to 'sys/src/cmd/python/Tools/pybench/Lists.py')
-rw-r--r-- | sys/src/cmd/python/Tools/pybench/Lists.py | 295 |
1 files changed, 295 insertions, 0 deletions
diff --git a/sys/src/cmd/python/Tools/pybench/Lists.py b/sys/src/cmd/python/Tools/pybench/Lists.py new file mode 100644 index 000000000..67760db35 --- /dev/null +++ b/sys/src/cmd/python/Tools/pybench/Lists.py @@ -0,0 +1,295 @@ +from pybench import Test + +class SimpleListManipulation(Test): + + version = 2.0 + operations = 5* (6 + 6 + 6) + rounds = 130000 + + def test(self): + + l = [] + append = l.append + + for i in xrange(self.rounds): + + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + x = l[0] + x = l[1] + x = l[2] + x = l[3] + x = l[4] + x = l[5] + + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + x = l[0] + x = l[1] + x = l[2] + x = l[3] + x = l[4] + x = l[5] + + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + x = l[0] + x = l[1] + x = l[2] + x = l[3] + x = l[4] + x = l[5] + + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + x = l[0] + x = l[1] + x = l[2] + x = l[3] + x = l[4] + x = l[5] + + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + x = l[0] + x = l[1] + x = l[2] + x = l[3] + x = l[4] + x = l[5] + + if len(l) > 10000: + # cut down the size + del l[:] + + def calibrate(self): + + l = [] + append = l.append + + for i in xrange(self.rounds): + pass + +class ListSlicing(Test): + + version = 2.0 + operations = 25*(3+1+2+1) + rounds = 800 + + def test(self): + + n = range(100) + r = range(25) + + for i in xrange(self.rounds): + + l = n[:] + + for j in r: + + m = l[50:] + m = l[:25] + m = l[50:55] + l[:3] = n + m = l[:-1] + m = l[1:] + l[-1:] = n + + def calibrate(self): + + n = range(100) + r = range(25) + + for i in xrange(self.rounds): + for j in r: + pass + +class SmallLists(Test): + + version = 2.0 + operations = 5*(1+ 6 + 6 + 3 + 1) + rounds = 80000 + + def test(self): + + for i in xrange(self.rounds): + + l = [] + + append = l.append + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + l[:3] = [1,2,3] + m = l[:-1] + m = l[1:] + + l[-1:] = [4,5,6] + + l = [] + + append = l.append + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + l[:3] = [1,2,3] + m = l[:-1] + m = l[1:] + + l[-1:] = [4,5,6] + + l = [] + + append = l.append + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + l[:3] = [1,2,3] + m = l[:-1] + m = l[1:] + + l[-1:] = [4,5,6] + + l = [] + + append = l.append + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + l[:3] = [1,2,3] + m = l[:-1] + m = l[1:] + + l[-1:] = [4,5,6] + + l = [] + + append = l.append + append(2) + append(3) + append(4) + append(2) + append(3) + append(4) + + l[0] = 3 + l[1] = 4 + l[2] = 5 + l[3] = 3 + l[4] = 4 + l[5] = 5 + + l[:3] = [1,2,3] + m = l[:-1] + m = l[1:] + + l[-1:] = [4,5,6] + + def calibrate(self): + + for i in xrange(self.rounds): + pass |