Exemple #1
0
    def test_cross_reference(self):
        extra_source("""class X:
        def __init__(self, x):
            self.x = x
        """)

        @jittify([], int)
        def func():
            return X(42).x

        assert func() == 42
Exemple #2
0
    def test_cross_reference(self):
        extra_source(
            """class X:
        def __init__(self, x):
            self.x = x
        """
        )

        @jittify([], int)
        def func():
            return X(42).x

        assert func() == 42
Exemple #3
0
def check_numba(f, prepare):
    jit_f = numba.jit(f)
    a = prepare()
    for i in xrange(NUMBER):
        jit_f(a, 3.5)


class X(object):
    def __init__(self, x):
        self.x = x


extra_source("""
class X(object):
    def __init__(self, x):
        self.x = x    
""")

ALL = [('PY', check_py), ('JITPY', check_jitpy), ('NUMBA', check_numba)]

for bench_name, bench_func, prep_func in [
    ('array traversal', f, prepare_f), ('2d array traversal', f2, prepare_f2),
    ('tuple + array', f3, prepare_f3), ('instance creation', f4, prepare_f4)
]:
    print bench_name
    for name, func in ALL:
        t0 = time.time()
        func(bench_func, prep_func)
        t = time.time() - t0
        if func is check_py:
Exemple #4
0
    for i in xrange(NUMBER):
        jit_f(a, 3.5)

def check_numba(f, prepare):
    jit_f = numba.jit(f)
    a = prepare()
    for i in xrange(NUMBER):
        jit_f(a, 3.5)

class X(object):
    def __init__(self, x):
        self.x = x

extra_source("""
class X(object):
    def __init__(self, x):
        self.x = x    
""")

ALL = [('PY', check_py), ('JITPY', check_jitpy), ('NUMBA', check_numba)]
        
for bench_name, bench_func, prep_func in [
        ('array traversal', f, prepare_f),
        ('2d array traversal', f2, prepare_f2),
        ('tuple + array', f3, prepare_f3),
        ('instance creation', f4, prepare_f4)]:
    print bench_name
    for name, func in ALL:
        t0 = time.time()
        func(bench_func, prep_func)
        t = time.time() - t0