python testrunner/pypyjit_tests.py in dir d:\pypy_stuff\buildbot64\slave\pypy-c-jit-win-x86-64\build (timeout 4000 secs) watching logfiles {'pytestLog': 'pypyjit_new.log'} argv: ['python', 'testrunner/pypyjit_tests.py'] environment: ALLUSERSPROFILE=C:\ProgramData APPDATA=C:\Users\matti\AppData\Roaming ASL.LOG=Destination=file CHOCOLATEYINSTALL=C:\ProgramData\chocolatey CHOCOLATEYLASTPATHUPDATE=133185086718935289 CHOCOLATEYTOOLSLOCATION=C:\tools CLINK_DIR=C:\Program Files (x86)\clink\0.4.9 COMMONPROGRAMFILES=C:\Program Files (x86)\Common Files COMMONPROGRAMFILES(X86)=C:\Program Files (x86)\Common Files COMMONPROGRAMW6432=C:\Program Files\Common Files COMPUTERNAME=DESKTOP-RYZEN COMSPEC=C:\WINDOWS\system32\cmd.exe CONDA_BAT=d:\miniconda\condabin\conda.bat CONDA_EXE=d:\miniconda\Scripts\conda.exe CONDA_SHLVL=0 CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7 CUDA_PATH_V11_7=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7 DRIVERDATA=C:\Windows\System32\Drivers\DriverData LOCALAPPDATA=C:\Users\matti\AppData\Local NUMBER_OF_PROCESSORS=2 NVTOOLSEXT_PATH=C:\Program Files\NVIDIA Corporation\NvToolsExt\ OS=Windows_NT PATH=d:\CPython27\lib\site-packages\pywin32_system32;d:\pypy_stuff\pypy\externals\bin;D:\CPython27;D:\pypy_stuff\pypy2.7-v7.3.18\Scripts;D:\pypy_stuff\pypy2.7-v7.3.18;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\TortoiseHg\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\WINDOWS\System32\OpenSSH PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC PROCESSOR_ARCHITECTURE=x86 PROCESSOR_ARCHITEW6432=AMD64 PROCESSOR_IDENTIFIER=AMD64 Family 23 Model 113 Stepping 0, AuthenticAMD PROCESSOR_LEVEL=23 PROCESSOR_REVISION=7100 PROGRAMDATA=C:\ProgramData PROGRAMFILES=C:\Program Files (x86) PROGRAMFILES(X86)=C:\Program Files (x86) PROGRAMW6432=C:\Program Files PROMPT=$P$G PSMODULEPATH=%ProgramFiles%\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules PUBLIC=C:\Users\Public PWD=d:\pypy_stuff\buildbot64\slave\pypy-c-jit-win-x86-64\build PYPY_ENABLE_WINCONSOLEIO=1 PYTEST_XDIST_AUTO_NUM_WORKERS=4 RTOOLS40_HOME=C:\rtools40 RTOOLS43_HOME=C:\rtools43 RTOOLS44_HOME=C:\rtools44 SYSTEMDRIVE=C: SYSTEMROOT=C:\WINDOWS TEMP=D:\SystemTemp TMP=D:\SystemTemp TMPDIR=d:\systemtemp\pytest USERDOMAIN=DESKTOP-RYZEN USERNAME=matti USERPROFILE=C:\Users\matti VS140COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\ WINDIR=C:\WINDOWS using PTY: False D:\pypy_stuff\pypy2.7-v7.3.18\site-packages\hypothesis\extra\pytestplugin.py:61: HypothesisWarning: You are using Pytest version 2.9.2. Hypothesis tests work with any test runner, but our Pytest plugin requires Pytest 4.3 or newer. Note that the Pytest developers no longer support this version either! Disabling the Hypothesis pytest plugin... warnings.warn(PYTEST_TOO_OLD_MESSAGE % (pytest.__version__,), HypothesisWarning) ============================= test session starts ============================= platform win32 -- Python 2.7.18[pypy-7.3.18-alpha], pytest-2.9.2, py-1.4.29, pluggy-0.3.1 pytest-2.9.2 from d:\pypy_stuff\buildbot64\slave\pypy-c-jit-win-x86-64\build\pytest.pyc rootdir: d:\pypy_stuff\buildbot64\slave\pypy-c-jit-win-x86-64\build, inifile: pytest.ini plugins: hypothesis-4.57.1 collected 1194 items / 1 skipped pypy\module\pypyjit\test_pypy_c\test_00_model.py ........................ pypy\module\pypyjit\test_pypy_c\test_alloc.py ................................................... pypy\module\pypyjit\test_pypy_c\test_array.py ........ pypy\module\pypyjit\test_pypy_c\test_boolrewrite.py ...................................................................................................................................................................................................................................................................................................................................... pypy\module\pypyjit\test_pypy_c\test_buffers.py .. pypy\module\pypyjit\test_pypy_c\test_bug.py s pypy\module\pypyjit\test_pypy_c\test_call.py .........................s. pypy\module\pypyjit\test_pypy_c\test_capture_locals.py . pypy\module\pypyjit\test_pypy_c\test_cprofile.py . pypy\module\pypyjit\test_pypy_c\test_exception.py ..... pypy\module\pypyjit\test_pypy_c\test_ffi.py s.Fs.ss... pypy\module\pypyjit\test_pypy_c\test_generators.py ... pypy\module\pypyjit\test_pypy_c\test_getframe.py .F pypy\module\pypyjit\test_pypy_c\test_globals.py . pypy\module\pypyjit\test_pypy_c\test_import.py .... pypy\module\pypyjit\test_pypy_c\test_instance.py ............... pypy\module\pypyjit\test_pypy_c\test_intbound.py ................................................................................................................................................................................................................................................................................... pypy\module\pypyjit\test_pypy_c\test_itertools.py .. pypy\module\pypyjit\test_pypy_c\test_jitlogparser.py s pypy\module\pypyjit\test_pypy_c\test_math.py FFs.. pypy\module\pypyjit\test_pypy_c\test_micronumpy.py ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss pypy\module\pypyjit\test_pypy_c\test_min_max.py ... pypy\module\pypyjit\test_pypy_c\test_misc.py ....................... pypy\module\pypyjit\test_pypy_c\test_shift.py ........................................................................................................................................................................................................................... pypy\module\pypyjit\test_pypy_c\test_string.py ......x............ pypy\module\pypyjit\test_pypy_c\test_struct.py ...... pypy\module\pypyjit\test_pypy_c\test_thread.py ... pypy\module\pypyjit\test_pypy_c\test_weakref.py . ================================== FAILURES =================================== ____________________ Test__ffi.test__ffi_call_releases_gil ____________________ self = <pypy.module.pypyjit.test_pypy_c.test_ffi.Test__ffi object at 0x000002145ef09638> def test__ffi_call_releases_gil(self): from rpython.rlib.clibffi import get_libc_name def main(libc_name, n): import time import os from threading import Thread # if os.name == 'nt': from _rawffi.alt import WinDLL, types libc = WinDLL('Kernel32.dll') sleep = libc.getfunc('Sleep', [types.uint], types.uint) delays = [0]*n + [1000] else: from _rawffi.alt import CDLL, types libc = CDLL(libc_name) sleep = libc.getfunc('sleep', [types.uint], types.uint) delays = [0]*n + [1] # def loop_of_sleeps(i, delays): for delay in delays: sleep(delay) # ID: sleep # threads = [Thread(target=loop_of_sleeps, args=[i, delays]) for i in range(5)] start = time.time() for i, thread in enumerate(threads): thread.start() for thread in threads: thread.join() end = time.time() return end - start log = self.run(main, [get_libc_name(), 200], threshold=150, import_site=True) > assert 1 <= log.result <= 1.5 # at most 0.5 seconds of overhead E assert 1.6718692779541016 <= 1.5 E + where 1.6718692779541016 = 1.6718692779541016 E + where 1.6718692779541016 = <pypy.module.pypyjit.test_pypy_c.model.Log object at 0x000002145b3caa30>.result pypy\module\pypyjit\test_pypy_c\test_ffi.py:109: AssertionError ______________________ TestGetFrame.test_current_frames _______________________ self = <pypy.module.pypyjit.test_pypy_c.test_getframe.TestGetFrame object at 0x000002145eec2b10> def test_current_frames(self): def main(): import sys import time import _thread as thread lst = [0.0] * 1000 lst[-33] = 3.0 done = [] def h1(x): time.sleep(lst[x]) def g1(x): h1(x) def f1(): for j in range(1000): g1(j) done.append('done') for k in range(3): thread.start_new_thread(f1, ()) time.sleep(1) d = sys._current_frames() time.sleep(3) # the captured frames should be finished by now done.append(str(len(d))) for key, value in d.items(): while value is not None: name = value.f_code.co_name if len(name) == 2 and name[1] == '1': done.append(name) value = value.f_back return repr('-'.join(done)) log = self.run(main, []) > assert log.result == 'done-done-done-4-h1-g1-f1-h1-g1-f1-h1-g1-f1' E assert '4-h1-g1-f1-h1-g1-f1-h1-g1-f1' == 'done-done-don...1-f1-h1-g1-f1' E - 4-h1-g1-f1-h1-g1-f1-h1-g1-f1 E + done-done-done-4-h1-g1-f1-h1-g1-f1-h1-g1-f1 E ? +++++++++++++++ pypy\module\pypyjit\test_pypy_c\test_getframe.py:67: AssertionError ______________________________ TestMath.test_log ______________________________ self = <pypy.module.pypyjit.test_pypy_c.test_math.TestMath object at 0x000002145bec0a30> def test_log(self): def main(n): import math i = 1 s = 0.0 while i < n: s += math.log(i) - math.log10(i) i += 1 return s log = self.run(main, [500]) assert round(log.result, 6) == round(main(500), 6) loop, = log.loops_by_filename(self.filepath) > assert loop.match(""" i2 = int_lt(i0, i1) guard_true(i2, descr=...) guard_not_invalidated(descr=...) f1 = cast_int_to_float(i0) i3 = float_le(f1, 0.0) guard_false(i3, descr=...) f2 = call_f(ConstClass(log), f1, descr=<Callf . f EF=2>) f3 = call_f(ConstClass(log10), f1, descr=<Callf . f EF=2>) f4 = float_sub(f2, f3) f5 = float_add(f0, f4) i4 = int_add(i0, 1) --TICK-- jump(..., descr=...) """) pypy\module\pypyjit\test_pypy_c\test_math.py:19: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pypy\module\pypyjit\test_pypy_c\model.py:177: in match return matcher.match(expected_src, **kwds) pypy\module\pypyjit\test_pypy_c\model.py:524: in match self.match_loop(expected_ops, ignore_ops) pypy\module\pypyjit\test_pypy_c\model.py:500: in match_loop self.match_op(op, exp_op) pypy\module\pypyjit\test_pypy_c\model.py:417: in match_op self._assert(self.match_var(arg, exp_arg), "variable mismatch: %r instead of %r" % (arg, exp_arg)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x000002145c402058> cond = False message = "variable mismatch: 'ConstClass(ccall_log)' instead of 'ConstClass(log)'" def _assert(self, cond, message): if not cond: > raise InvalidMatch(message, frame=sys._getframe(1)) E InvalidMatch: variable mismatch: 'ConstClass(ccall_log)' instead of 'ConstClass(log)' pypy\module\pypyjit\test_pypy_c\model.py:402: InvalidMatch ---------------------------- Captured stdout call ----------------------------- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Loops don't match ================= loop id = None ("variable mismatch: 'ConstClass(ccall_log)' instead of 'ConstClass(log)'",) <could not determine information> Ignore ops: [] Got: i55 = int_lt(i50, i29) guard_true(i55, descr=<Guard0x214bef9ba48>) guard_not_invalidated(descr=<Guard0x214beff4410>) f56 = cast_int_to_float(i50) i58 = float_le(f56, 0.000000) guard_false(i58, descr=<Guard0x214beff4470>) ===== HERE ===== f60 = call_f(ConstClass(ccall_log), f56, descr=<Callf 8 f EF=2>) f62 = call_f(ConstClass(ccall_log10), f56, descr=<Callf 8 f EF=2>) f63 = float_sub(f60, f62) f64 = float_add(f48, f63) i66 = int_add(i50, 1) i68 = getfield_raw_i(140713107118352, descr=<FieldS pypysig_long_struct_inner.c_value 0>) i70 = int_lt(i68, 0) guard_false(i70, descr=<Guard0x214bef9ba90>) jump(p0, p1, p8, p10, i66, f64, i29, descr=TargetToken(2288126809824)) Expected: i2 = int_lt(i0, i1) guard_true(i2, descr=...) guard_not_invalidated(descr=...) f1 = cast_int_to_float(i0) i3 = float_le(f1, 0.0) guard_false(i3, descr=...) f2 = call_f(ConstClass(log), f1, descr=<Callf . f EF=2>) f3 = call_f(ConstClass(log10), f1, descr=<Callf . f EF=2>) f4 = float_sub(f2, f3) f5 = float_add(f0, f4) i4 = int_add(i0, 1) guard_not_invalidated? ticker0 = getfield_raw_i(#, descr=<FieldS pypysig_long_struct_inner.c_value .*>) ticker_cond0 = int_lt(ticker0, 0) guard_false(ticker_cond0, descr=...) jump(..., descr=...) ____________________________ TestMath.test_sin_cos ____________________________ self = <pypy.module.pypyjit.test_pypy_c.test_math.TestMath object at 0x00000214570ff248> def test_sin_cos(self): def main(n): import math i = 1 s = 0.0 while i < n: s += math.sin(i) - math.cos(i) i += 1 return s log = self.run(main, [500]) assert round(log.result, 6) == round(main(500), 6) loop, = log.loops_by_filename(self.filepath) > assert loop.match(""" i2 = int_lt(i0, i1) guard_true(i2, descr=...) guard_not_invalidated(descr=...) f1 = cast_int_to_float(i0) i6 = --ISINF--(f1) guard_false(i6, descr=...) f2 = call_f(ConstClass(sin), f1, descr=<Callf . f EF=0>) f3 = call_f(ConstClass(cos), f1, descr=<Callf . f EF=0>) f4 = float_sub(f2, f3) f5 = float_add(f0, f4) i7 = int_add(i0, 1) --TICK-- jump(..., descr=) """) pypy\module\pypyjit\test_pypy_c\test_math.py:48: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pypy\module\pypyjit\test_pypy_c\model.py:177: in match return matcher.match(expected_src, **kwds) pypy\module\pypyjit\test_pypy_c\model.py:524: in match self.match_loop(expected_ops, ignore_ops) pypy\module\pypyjit\test_pypy_c\model.py:500: in match_loop self.match_op(op, exp_op) pypy\module\pypyjit\test_pypy_c\model.py:417: in match_op self._assert(self.match_var(arg, exp_arg), "variable mismatch: %r instead of %r" % (arg, exp_arg)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x000002145735f788> cond = False message = "variable mismatch: 'ConstClass(ccall_sin)' instead of 'ConstClass(sin)'" def _assert(self, cond, message): if not cond: > raise InvalidMatch(message, frame=sys._getframe(1)) E InvalidMatch: variable mismatch: 'ConstClass(ccall_sin)' instead of 'ConstClass(sin)' pypy\module\pypyjit\test_pypy_c\model.py:402: InvalidMatch ---------------------------- Captured stdout call ----------------------------- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Loops don't match ================= loop id = None ("variable mismatch: 'ConstClass(ccall_sin)' instead of 'ConstClass(sin)'",) <could not determine information> Ignore ops: [] Got: i56 = int_lt(i51, i29) guard_true(i56, descr=<Guard0x26266f39a00>) guard_not_invalidated(descr=<Guard0x26266f98140>) f57 = cast_int_to_float(i51) f59 = float_add(f57, 11235582092889474423308157442431404585112356118389416079589380072358292237843810195794279832650471001320007117491962084853674360550901038905802964414967132773610493339054092829768888725077880882465817684505312860552384417646403930092119569408801702322709406917786643639996702871154982269052209770601514008576.000000) i60 = float_eq(f59, f57) guard_false(i60, descr=<Guard0x26266f981a0>) ===== HERE ===== f62 = call_f(ConstClass(ccall_sin), f57, descr=<Callf 8 f EF=2>) f64 = call_f(ConstClass(ccall_cos), f57, descr=<Callf 8 f EF=2>) f65 = float_sub(f62, f64) f66 = float_add(f49, f65) i68 = int_add(i51, 1) i70 = getfield_raw_i(140713107118352, descr=<FieldS pypysig_long_struct_inner.c_value 0>) i72 = int_lt(i70, 0) guard_false(i72, descr=<Guard0x26266f39a48>) jump(p0, p1, p8, p10, i68, f66, i29, descr=TargetToken(2621657470688)) Expected: i2 = int_lt(i0, i1) guard_true(i2, descr=...) guard_not_invalidated(descr=...) f1 = cast_int_to_float(i0) f1\B999 = float_add(f1, ...) i6 = float_eq(f1\B999, f1) guard_false(i6, descr=...) f2 = call_f(ConstClass(sin), f1, descr=<Callf . f EF=0>) f3 = call_f(ConstClass(cos), f1, descr=<Callf . f EF=0>) f4 = float_sub(f2, f3) f5 = float_add(f0, f4) i7 = int_add(i0, 1) guard_not_invalidated? ticker0 = getfield_raw_i(#, descr=<FieldS pypysig_long_struct_inner.c_value .*>) ticker_cond0 = int_lt(ticker0, 0) guard_false(ticker_cond0, descr=...) jump(..., descr=) =========================== short test summary info =========================== FAIL pypy/module/pypyjit/test_pypy_c/test_ffi.py::Test__ffi::()::test__ffi_call_releases_gil FAIL pypy/module/pypyjit/test_pypy_c/test_getframe.py::TestGetFrame::()::test_current_frames FAIL pypy/module/pypyjit/test_pypy_c/test_math.py::TestMath::()::test_log FAIL pypy/module/pypyjit/test_pypy_c/test_math.py::TestMath::()::test_sin_cos ====== 4 failed, 1025 passed, 165 skipped, 1 xfailed in 1333.55 seconds ======= program finished with exit code 1 elapsedTime=1346.415000