New issue 3107: Please expose _Py_Finalizing to C programs!
https://bitbucket.org/pypy/pypy/issues/3107/please-expose-_py_finalizing-to-c-programs

Laël Cellier:

PyPy can automatically vectorize everything \(even the base implementation can 
be jitted and benefit from multithread gc instead of the reference counter\) 
but it can’t parallelize even manually and vectorization is limited to sse on 
x86.  
Numba can parallelize using the full instruction set and it can even use the 
gpu. The definite difference with pypy is it can performs multithreading 
enabling to use 50 cpu cores. However, it requires manual instrumentation and 
even then it can definitely operate on less scenarios than PyPy.

Why not all simply combine both worlds? Especially since the variant of numpy 
for pypy is written in pure python code and thus it should be possible to use 
the `nofunc` feature of Numba everywhere.

```c
C compiler: gcc -pipe -fPIC
creating build/temp.linux-x86_64-3.6
creating build/temp.linux-x86_64-3.6/numba
compile options: '-I/usr/lib64/pypy3.6-v7.2.0-linux64/include -c'
extra options: '-g'
gcc: numba/_dynfuncmod.c
In file included from numba/_dynfuncmod.c:1:
numba/_dynfunc.c: In function ‘generator_dealloc’:
numba/_dynfunc.c:361:10: error: ‘_Py_Finalizing’ undeclared (first use in this 
function); did you mean ‘__issignaling’?
     if (!_Py_Finalizing)
          ^~~~~~~~~~~~~~
          __issignaling
numba/_dynfunc.c:361:10: note: each undeclared identifier is reported only once 
for each function it appears in
```

So the installation through pip fails.


_______________________________________________
pypy-issue mailing list
pypy-issue@python.org
https://mail.python.org/mailman/listinfo/pypy-issue

Reply via email to