A guess: I think this pyopencl version uses POCL source caching.
Using /var/lib/gitlab-runner/builds/f31de19a/1/inducer/pytential/.miniconda3/envs/testing/lib/python3.5/site-packagesSearching for pyopencl==2017.1.1Best match: pyopencl 2017.1.1Adding pyopencl 2017.1.1 to easy-install.pth file
These are super weird and only appear in Conda runs:
Exception ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x7f622bab4ea0>Traceback (most recent call last): File "/var/lib/gitlab-runner/builds/f31de19a/0/inducer/pytential/.miniconda3/envs/testing/lib/python3.5/weakref.py", line 117, in removeTypeError: 'NoneType' object is not callableException ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x7f622bab4ea0>Traceback (most recent call last): File "/var/lib/gitlab-runner/builds/f31de19a/0/inducer/pytential/.miniconda3/envs/testing/lib/python3.5/weakref.py", line 117, in removeTypeError: 'NoneType' object is not callableException ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x7f622bab4ea0>Traceback (most recent call last): File "/var/lib/gitlab-runner/builds/f31de19a/0/inducer/pytential/.miniconda3/envs/testing/lib/python3.5/weakref.py", line 117, in removeTypeError: 'NoneType' object is not callableException ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x7f622bab4ea0>Traceback (most recent call last): File "/var/lib/gitlab-runner/builds/f31de19a/0/inducer/pytential/.miniconda3/envs/testing/lib/python3.5/weakref.py", line 117, in removeTypeError: 'NoneType' object is not callable
More updates: On my machine the warm cache run of test_global_qbx is twice as slow when using Conda compared to using my native environment. I can also reproduce the weakref errors. It happens both with pocl 0.13 and 0.14 in Conda.
That's pocl's way of saying "I'm actually doing work." Unfortunately, deleting an event waits on the completion of the operation corresponding to the event. (The CL spec does not specify that it should.)
At this point, the main difference between our dev environments and conda is the version of pyopencl. I'll go ahead and roll a release and push that through to conda. We'll see if that helps. It'll certainly help kill the "compile" item in the profile.
These are super weird and only appear in Conda runs:
There were actually two issues here--one that I pointed to and another that could conceivably be attributed to this: https://bugs.python.org/issue29519 (a Py 3.5 bug). Not 100% sure though.