-
Notifications
You must be signed in to change notification settings - Fork 104
Supported C API Extensions
Sam Gross edited this page Jan 10, 2022
·
13 revisions
The table below lists C API extensions with pre-built pip wheels that are compatible with "nogil" Python, as well as a few popular extensions that do not currently work with nogil Python.
Note that even the "supported" extensions are not well tested. Please file GitHub issue if you run into any problems.
Extension | Status | Versions |
---|---|---|
cffi | OK | |
cymem | OK | |
cython | OK | 0.29.26 |
h5py | OK | |
jax | OK | 0.1.75 |
kiwisolver | OK | |
llvmlite | OK | 0.37.0 |
lxml | OK | |
markupsafe | OK | |
matplotlib | OK | |
numba | Not working | |
numpy | OK | 1.19.3,1.19.4 |
opencv-python | OK | |
orjson | OK | |
pglast | OK | |
pillow | OK | 8.4.0 |
protobuf | TODO | |
psycopg2-binary | OK | |
pyarrow | Not working | |
pybind11 | OK | 2.6.2 |
pydantic | OK | 1.8.2 |
pytorch | OK | 1.9.0 (CUDA 11.0) |
scikit-learn | OK | 1.0.2 |
scipy | OK | |
spacy | OK | |
thinc | OK | |
torchvision | OK | 0.10.0 |
Seems to work, but I'm not sure about using Jax from multiple threads. Need someone with Jax expertise.
The interpreter.py file needs to be updated for the nogil interpreter's bytecode.
I haven't figured out how to build it from source yet.
Believed to work well.