2
from pypy.tool import testit
3
from pypy.tool.udir import udir
4
from pypy.translator.tool.cbuild import build_cfunc
5
from pypy.translator.test.test_cltrans import global_cl, make_cl_func
10
except AttributeError:
12
c_func = build_cfunc(func, dot=False)
14
cl_func = make_cl_func(func)
15
print "generated c-func for", func.func_name
16
t1 = timeit(100, func)
17
t2 = timeit(100, c_func)
19
t3 = timeit(100, cl_func)
20
print "cpython func ", t1, "seconds"
21
print "pypy/pyrex/cmodule ", t2, "seconds"
23
print "cl (experimental) ", t3, "seconds", global_cl
25
def timeit(num, func, *args):
26
from time import time as now
32
if __name__ == '__main__':
33
from pypy.translator.test.snippet import sieve_of_eratosthenes
34
benchmark(sieve_of_eratosthenes)