[Cython] State of PyPy compatibility wrt. arrays, incl. NumPy

Yury V. Zaytsev yury at shurup.com
Wed Oct 9 15:01:20 CEST 2013


Hi,

I've been playing with my Cython-generated extension on PyPy, trying to
load it through CPyExt, and, surprisingly, after a few fixes to PyPy, it
generally seems to work.

However, it looks like the situation with whatever kind of arrays is
actually pretty gloomy at the moment.

First, PyPy supports Python array.arrays, but doesn't replicate Python
internals, so the extension even fails to load, since in PyPy
tp_basicsize == 16 and not 56.

Not sure what to make of this one... for my needs, that would be enough.
I guess PyPy developers have to be approached to see if it's practical
to expose CPython structure, or agree on a different API?

Second, they say that the new-style buffer access is broken and it's not
clear if they will support it at all & when this is going to happen.

Third, apparently, there is already some limited support for NumPy C-API
in NumPyPy, and it seems that there is interest in improving this
support to make it usable:

http://docs.scipy.org/doc/numpy/reference/c-api.array.html

Finally, GetItem on NumPyPy arrays, which will be very slow, but at
least should work, rather than not, is also broken. I think this will be
easiest of all to fix.

So my question is, has anyone been playing with PyPy recently? Is there
anyone interested in making Cython-generated code to work nicely with
CPyExt? What are the plans w.r.t. the points I mentioned?

I've noticed that PyPy jobs in Jenkins are disabled... not sure whether
this really means anything or not.

Thanks!

-- 
Sincerely yours,
Yury V. Zaytsev





More information about the cython-devel mailing list