[Python-checkins] r69411 - in python/branches/py3k: Misc/NEWS Tools/pybench/Calls.py Tools/pybench/CommandLine.py Tools/pybench/README Tools/pybench/Strings.py Tools/pybench/pybench.py Tools/pybench/systimes.py

antoine.pitrou python-checkins at python.org
Sat Feb 7 18:13:31 CET 2009


Author: antoine.pitrou
Date: Sat Feb  7 18:13:31 2009
New Revision: 69411

Log:
Issue #4704: remove use of cmp() in pybench, bump its version number to 2.1,
and make it 2.6-compatible.



Modified:
   python/branches/py3k/Misc/NEWS
   python/branches/py3k/Tools/pybench/Calls.py
   python/branches/py3k/Tools/pybench/CommandLine.py
   python/branches/py3k/Tools/pybench/README
   python/branches/py3k/Tools/pybench/Strings.py
   python/branches/py3k/Tools/pybench/pybench.py
   python/branches/py3k/Tools/pybench/systimes.py

Modified: python/branches/py3k/Misc/NEWS
==============================================================================
--- python/branches/py3k/Misc/NEWS	(original)
+++ python/branches/py3k/Misc/NEWS	Sat Feb  7 18:13:31 2009
@@ -394,6 +394,9 @@
 Tools/Demos
 -----------
 
+- Issue #4704: remove use of cmp() in pybench, bump its version number to 2.1,
+  and make it 2.6-compatible.
+
 - Ttk demos added in Demo/tkinter/ttk/
 
 - Issue #4677: add two list comprehension tests to pybench.

Modified: python/branches/py3k/Tools/pybench/Calls.py
==============================================================================
--- python/branches/py3k/Tools/pybench/Calls.py	(original)
+++ python/branches/py3k/Tools/pybench/Calls.py	Sat Feb  7 18:13:31 2009
@@ -2,7 +2,7 @@
 
 class PythonFunctionCalls(Test):
 
-    version = 2.0
+    version = 2.1
     operations = 5*(1+4+4+2)
     rounds = 60000
 
@@ -178,8 +178,8 @@
         # localize functions
         f0 = globals
         f1 = hash
-        f2 = cmp
-        f3 = range
+        f2 = divmod
+        f3 = max
 
         # do calls
         for i in range(self.rounds):
@@ -279,8 +279,8 @@
         # localize functions
         f0 = dir
         f1 = hash
-        f2 = range
-        f3 = range
+        f2 = divmod
+        f3 = max
 
         # do calls
         for i in range(self.rounds):

Modified: python/branches/py3k/Tools/pybench/CommandLine.py
==============================================================================
--- python/branches/py3k/Tools/pybench/CommandLine.py	(original)
+++ python/branches/py3k/Tools/pybench/CommandLine.py	Sat Feb  7 18:13:31 2009
@@ -11,6 +11,8 @@
 
 """
 
+from __future__ import print_function
+
 __copyright__ = """\
 Copyright (c), 1997-2006, Marc-Andre Lemburg (mal at lemburg.com)
 Copyright (c), 2000-2006, eGenix.com Software GmbH (info at egenix.com)

Modified: python/branches/py3k/Tools/pybench/README
==============================================================================
--- python/branches/py3k/Tools/pybench/README	(original)
+++ python/branches/py3k/Tools/pybench/README	Sat Feb  7 18:13:31 2009
@@ -82,7 +82,7 @@
   --examples       show examples of usage
 
 Version:
- 2.0
+ 2.1
 
 The normal operation is to run the suite and display the
 results. Use -f to save them for later reuse or comparisons.
@@ -95,9 +95,9 @@
 
 Examples:
 
-python2.1 pybench.py -f p21.pybench
-python2.5 pybench.py -f p25.pybench
-python pybench.py -s p25.pybench -c p21.pybench
+python3.0 pybench.py -f p30.pybench
+python3.1 pybench.py -f p31.pybench
+python pybench.py -s p31.pybench -c p30.pybench
 """
 
 License
@@ -111,9 +111,9 @@
 
 """
 -------------------------------------------------------------------------------
-PYBENCH 2.0
+PYBENCH 2.1
 -------------------------------------------------------------------------------
-* using Python 2.4.2
+* using CPython 3.0
 * disabled garbage collection
 * system check interval set to maximum: 2147483647
 * using timer: time.time
@@ -141,8 +141,9 @@
        Processor:    x86_64
 
     Python:
+       Implementation: CPython
        Executable:   /usr/local/bin/python
-       Version:      2.4.2
+       Version:      3.0
        Compiler:     GCC 3.3.4 (pre 3.3.5 20040809)
        Bits:         64bit
        Build:        Oct  1 2005 15:24:35 (#1)
@@ -331,6 +332,11 @@
 Version History
 ---------------
 
+  2.1: made some minor changes for compatibility with Python 3.0:
+        - replaced cmp with divmod and range with max in Calls.py
+          (cmp no longer exists in 3.0, and range is a list in
+          Python 2.x and an iterator in Python 3.x)
+
   2.0: rewrote parts of pybench which resulted in more repeatable
        timings:
         - made timer a parameter

Modified: python/branches/py3k/Tools/pybench/Strings.py
==============================================================================
--- python/branches/py3k/Tools/pybench/Strings.py	(original)
+++ python/branches/py3k/Tools/pybench/Strings.py	Sat Feb  7 18:13:31 2009
@@ -1,6 +1,12 @@
 from pybench import Test
 import sys
 
+try:
+    intern
+except NameError:
+    intern = sys.intern
+
+
 class ConcatStrings(Test):
 
     version = 2.0
@@ -174,7 +180,7 @@
     def test(self):
 
         # Make sure the strings *are* interned
-        s = sys.intern(''.join(map(str,range(10))))
+        s = intern(''.join(map(str,range(10))))
         t = s
 
         for i in range(self.rounds):
@@ -240,7 +246,7 @@
 
     def calibrate(self):
 
-        s = sys.intern(''.join(map(str,range(10))))
+        s = intern(''.join(map(str,range(10))))
         t = s
 
         for i in range(self.rounds):

Modified: python/branches/py3k/Tools/pybench/pybench.py
==============================================================================
--- python/branches/py3k/Tools/pybench/pybench.py	(original)
+++ python/branches/py3k/Tools/pybench/pybench.py	Sat Feb  7 18:13:31 2009
@@ -3,14 +3,15 @@
 """ A Python Benchmark Suite
 
 """
-#
-# Note: Please keep this module compatible to Python 1.5.2.
+# Note: Please keep this module compatible to Python 2.6.
 #
 # Tests may include features in later Python versions, but these
 # should then be embedded in try-except clauses in the configuration
 # module Setup.py.
 #
 
+from __future__ import print_function
+
 # pybench Copyright
 __copyright__ = """\
 Copyright (c), 1997-2006, Marc-Andre Lemburg (mal at lemburg.com)
@@ -44,7 +45,7 @@
     import pickle
 
 # Version number; version history: see README file !
-__version__ = '2.0'
+__version__ = '2.1'
 
 ### Constants
 
@@ -174,7 +175,7 @@
     # Version number of the test as float (x.yy); this is important
     # for comparisons of benchmark runs - tests with unequal version
     # number will not get compared.
-    version = 2.0
+    version = 2.1
 
     # The number of abstract operations done in each round of the
     # test. An operation is the basic unit of what you want to
@@ -403,7 +404,7 @@
     roundtime = 0
 
     # Benchmark version number as float x.yy
-    version = 2.0
+    version = 2.1
 
     # Produce verbose output ?
     verbose = 0

Modified: python/branches/py3k/Tools/pybench/systimes.py
==============================================================================
--- python/branches/py3k/Tools/pybench/systimes.py	(original)
+++ python/branches/py3k/Tools/pybench/systimes.py	Sat Feb  7 18:13:31 2009
@@ -31,6 +31,9 @@
     the author. All Rights Reserved.
 
 """
+
+from __future__ import print_function
+
 import time, sys
 
 #


More information about the Python-checkins mailing list