summaryrefslogtreecommitdiff
path: root/sys/src/cmd/python/Tools/pybench/Strings.py
diff options
context:
space:
mode:
authorOri Bernstein <ori@eigenstate.org>2021-06-14 00:00:37 +0000
committerOri Bernstein <ori@eigenstate.org>2021-06-14 00:00:37 +0000
commita73a964e51247ed169d322c725a3a18859f109a3 (patch)
tree3f752d117274d444bda44e85609aeac1acf313f3 /sys/src/cmd/python/Tools/pybench/Strings.py
parente64efe273fcb921a61bf27d33b230c4e64fcd425 (diff)
python, hg: tow outside the environment.
they've served us well, and can ride off into the sunset.
Diffstat (limited to 'sys/src/cmd/python/Tools/pybench/Strings.py')
-rw-r--r--sys/src/cmd/python/Tools/pybench/Strings.py562
1 files changed, 0 insertions, 562 deletions
diff --git a/sys/src/cmd/python/Tools/pybench/Strings.py b/sys/src/cmd/python/Tools/pybench/Strings.py
deleted file mode 100644
index 3be8b35e9..000000000
--- a/sys/src/cmd/python/Tools/pybench/Strings.py
+++ /dev/null
@@ -1,562 +0,0 @@
-from pybench import Test
-from string import join
-
-class ConcatStrings(Test):
-
- version = 2.0
- operations = 10 * 5
- rounds = 100000
-
- def test(self):
-
- # Make sure the strings are *not* interned
- s = join(map(str,range(100)))
- t = join(map(str,range(1,101)))
-
- for i in xrange(self.rounds):
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- t + s
- t + s
- t + s
- t + s
- t + s
-
- def calibrate(self):
-
- s = join(map(str,range(100)))
- t = join(map(str,range(1,101)))
-
- for i in xrange(self.rounds):
- pass
-
-
-class CompareStrings(Test):
-
- version = 2.0
- operations = 10 * 5
- rounds = 200000
-
- def test(self):
-
- # Make sure the strings are *not* interned
- s = join(map(str,range(10)))
- t = join(map(str,range(10))) + "abc"
-
- for i in xrange(self.rounds):
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- t < s
- t > s
- t == s
- t > s
- t < s
-
- def calibrate(self):
-
- s = join(map(str,range(10)))
- t = join(map(str,range(10))) + "abc"
-
- for i in xrange(self.rounds):
- pass
-
-
-class CompareInternedStrings(Test):
-
- version = 2.0
- operations = 10 * 5
- rounds = 300000
-
- def test(self):
-
- # Make sure the strings *are* interned
- s = intern(join(map(str,range(10))))
- t = s
-
- for i in xrange(self.rounds):
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- t == s
- t == s
- t >= s
- t > s
- t < s
-
- def calibrate(self):
-
- s = intern(join(map(str,range(10))))
- t = s
-
- for i in xrange(self.rounds):
- pass
-
-
-class CreateStringsWithConcat(Test):
-
- version = 2.0
- operations = 10 * 5
- rounds = 200000
-
- def test(self):
-
- for i in xrange(self.rounds):
- s = 'om'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- s = s + 'xax'
- s = s + 'xbx'
- s = s + 'xcx'
- s = s + 'xdx'
- s = s + 'xex'
-
- def calibrate(self):
-
- for i in xrange(self.rounds):
- pass
-
-
-class StringSlicing(Test):
-
- version = 2.0
- operations = 5 * 7
- rounds = 160000
-
- def test(self):
-
- s = join(map(str,range(100)))
-
- for i in xrange(self.rounds):
-
- s[50:]
- s[:25]
- s[50:55]
- s[-1:]
- s[:1]
- s[2:]
- s[11:-11]
-
- s[50:]
- s[:25]
- s[50:55]
- s[-1:]
- s[:1]
- s[2:]
- s[11:-11]
-
- s[50:]
- s[:25]
- s[50:55]
- s[-1:]
- s[:1]
- s[2:]
- s[11:-11]
-
- s[50:]
- s[:25]
- s[50:55]
- s[-1:]
- s[:1]
- s[2:]
- s[11:-11]
-
- s[50:]
- s[:25]
- s[50:55]
- s[-1:]
- s[:1]
- s[2:]
- s[11:-11]
-
- def calibrate(self):
-
- s = join(map(str,range(100)))
-
- for i in xrange(self.rounds):
- pass
-
-### String methods
-
-if hasattr('', 'lower'):
-
- class StringMappings(Test):
-
- version = 2.0
- operations = 3 * (5 + 4 + 2 + 1)
- rounds = 70000
-
- def test(self):
-
- s = join(map(chr,range(20)),'')
- t = join(map(chr,range(50)),'')
- u = join(map(chr,range(100)),'')
- v = join(map(chr,range(256)),'')
-
- for i in xrange(self.rounds):
-
- s.lower()
- s.lower()
- s.lower()
- s.lower()
- s.lower()
-
- s.upper()
- s.upper()
- s.upper()
- s.upper()
- s.upper()
-
- s.title()
- s.title()
- s.title()
- s.title()
- s.title()
-
- t.lower()
- t.lower()
- t.lower()
- t.lower()
-
- t.upper()
- t.upper()
- t.upper()
- t.upper()
-
- t.title()
- t.title()
- t.title()
- t.title()
-
- u.lower()
- u.lower()
-
- u.upper()
- u.upper()
-
- u.title()
- u.title()
-
- v.lower()
-
- v.upper()
-
- v.title()
-
- def calibrate(self):
-
- s = join(map(chr,range(20)),'')
- t = join(map(chr,range(50)),'')
- u = join(map(chr,range(100)),'')
- v = join(map(chr,range(256)),'')
-
- for i in xrange(self.rounds):
- pass
-
- class StringPredicates(Test):
-
- version = 2.0
- operations = 10 * 7
- rounds = 100000
-
- def test(self):
-
- data = ('abc', '123', ' ', '\xe4\xf6\xfc', '\xdf'*10)
- len_data = len(data)
-
- for i in xrange(self.rounds):
- s = data[i % len_data]
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- s.isalnum()
- s.isalpha()
- s.isdigit()
- s.islower()
- s.isspace()
- s.istitle()
- s.isupper()
-
- def calibrate(self):
-
- data = ('abc', '123', ' ', '\u1234\u2345\u3456', '\uFFFF'*10)
- data = ('abc', '123', ' ', '\xe4\xf6\xfc', '\xdf'*10)
- len_data = len(data)
-
- for i in xrange(self.rounds):
- s = data[i % len_data]