[Python-checkins] r65240 - python/trunk/Tools/pybench/Calls.py
antoine.pitrou
python-checkins at python.org
Sat Jul 26 00:02:08 CEST 2008
Author: antoine.pitrou
Date: Sat Jul 26 00:02:07 2008
New Revision: 65240
Log:
add a pybench test for complex function calls (part of #1819)
Modified:
python/trunk/Tools/pybench/Calls.py
Modified: python/trunk/Tools/pybench/Calls.py
==============================================================================
--- python/trunk/Tools/pybench/Calls.py (original)
+++ python/trunk/Tools/pybench/Calls.py Sat Jul 26 00:02:07 2008
@@ -109,6 +109,64 @@
###
+class ComplexPythonFunctionCalls(Test):
+
+ version = 2.0
+ operations = 4*5
+ rounds = 100000
+
+ def test(self):
+
+ # define functions
+ def f(a,b,c,d=1,e=2,f=3):
+ return f
+
+ args = 1,2
+ kwargs = dict(c=3,d=4,e=5)
+
+ # do calls
+ for i in xrange(self.rounds):
+ f(a=i,b=i,c=i)
+ f(f=i,e=i,d=i,c=2,b=i,a=3)
+ f(1,b=i,**kwargs)
+ f(*args,**kwargs)
+
+ f(a=i,b=i,c=i)
+ f(f=i,e=i,d=i,c=2,b=i,a=3)
+ f(1,b=i,**kwargs)
+ f(*args,**kwargs)
+
+ f(a=i,b=i,c=i)
+ f(f=i,e=i,d=i,c=2,b=i,a=3)
+ f(1,b=i,**kwargs)
+ f(*args,**kwargs)
+
+ f(a=i,b=i,c=i)
+ f(f=i,e=i,d=i,c=2,b=i,a=3)
+ f(1,b=i,**kwargs)
+ f(*args,**kwargs)
+
+ f(a=i,b=i,c=i)
+ f(f=i,e=i,d=i,c=2,b=i,a=3)
+ f(1,b=i,**kwargs)
+ f(*args,**kwargs)
+
+
+ def calibrate(self):
+
+ # define functions
+ def f(a,b,c,d=1,e=2,f=3):
+ return f
+
+ args = 1,2
+ kwargs = dict(c=3,d=4,e=5)
+
+ # do calls
+ for i in xrange(self.rounds):
+ pass
+
+###
+
class BuiltinFunctionCalls(Test):
version = 2.0
More information about the Python-checkins
mailing list