Jax: PyPI macOS binaries missing for jaxlib 0.1.26

Created on 27 Aug 2019  Â·  23Comments  Â·  Source: google/jax

pip install --upgrade jax jaxlib

currently fetches jaxlib==0.1.25 on macOS, which breaks all JAXnet tests, while

pip install --upgrade jax jaxlib==0.1.23

makes them run fine. The macOS binary for jaxlib==0.1.26 seems to be missing.

bug build

Most helpful comment

I think I've got new mac wheels that work (labeled 0.1.27) but we need to bump the linux wheels as well for pypi reasons. Building those now...

All 23 comments

Thanks for catching this! I thought I'd uploaded these but something must have gone wrong.

I believe they're uploaded now:

image

Can you check, and close the issue if they're working?

It's now fetching jaxlib==0.1.26, but still failing with:

tests/test_core.py:None (tests/test_core.py)
ImportError while importing test module '/Users/juliuskunze/prj/jaxnet/tests/test_core.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
test_core.py:2: in <module>
    from jax import numpy as np, jit, lax
../../../.pyenv/versions/tf/lib/python3.6/site-packages/jax/__init__.py:19: in <module>
    from jax.api import *
../../../.pyenv/versions/tf/lib/python3.6/site-packages/jax/api.py:45: in <module>
    from . import ad_util
../../../.pyenv/versions/tf/lib/python3.6/site-packages/jax/ad_util.py:20: in <module>
    from .tree_util import register_pytree_node
../../../.pyenv/versions/tf/lib/python3.6/site-packages/jax/tree_util.py:44: in <module>
    from .lib import pytree
../../../.pyenv/versions/tf/lib/python3.6/site-packages/jax/lib/__init__.py:40: in <module>
    from jaxlib import xla_client
../../../.pyenv/versions/tf/lib/python3.6/site-packages/jaxlib/xla_client.py:37: in <module>
    from . import xla_extension as _xla
E   ImportError: dlopen(/Users/juliuskunze/.pyenv/versions/tf/lib/python3.6/site-packages/jaxlib/xla_extension.so, 2): Symbol not found: _PyThread_tss_alloc
E     Referenced from: /Users/juliuskunze/.pyenv/versions/tf/lib/python3.6/site-packages/jaxlib/xla_extension.so
E     Expected in: flat namespace
E    in /Users/juliuskunze/.pyenv/versions/tf/lib/python3.6/site-packages/jaxlib/xla_extension.so

0.1.25 fails with the same error, and 0.1.23 still works fine.

Hmm. If you're not already, can you try using Anaconda? I wonder if the latest wheels we built are somehow Anaconda-specific. (EDIT: we'd want to fix that if that's the case, I just want to gather more information!)

Can confirm, 0.1.26 works with Anaconda and doesn't outside of it.

I can confirm - I'm facing the same issue on my mac when I pip install jaxlib regarding the missing xla_extension.so file.

I think I've got new mac wheels that work (labeled 0.1.27) but we need to bump the linux wheels as well for pypi reasons. Building those now...

Just uploaded 0.1.27 wheels. Can you test them out and let me know if they work for you? I attempted to build against an Homebrew install rather than Anaconda, though I'm also a total newbie so these might still be broken.

Can't install 0.1.27 from PyPI. Can you double-check all binaries are up?

It shows up here and worked on my mac. Maybe it takes a couple tries because of some pip caching? (Also be sure to pass --upgrade.)

Yes, I was using pip install --upgrade jax jaxlib==0.1.27. Maybe the PyPI servers need some time? Doesn't explain why it works on your end though. Will try again tomorrow.

It looks like there isn't a new wheel for Python 3.6 on OS X yet.

I setup a new conda environment with Python 3.7. The new wheels work fine.

Can confirm that 0.1.27 is found in Python 3.7 (even without conda). For Python 3.6.5 however, pip install --upgrade jaxlib resolves to 0.1.26.

Thanks for checking! @JuliusKunze does the wheel for 3.7 import and run properly? If so I can figure out how to add the 3.6 wheels. If not I want to solve the import problem first.

Yes it does work properly (forgot to mention!)

We added Python 3.6 wheels for Jaxlib 0.1.27, so I think this is now fixed.

Can confirm.

Hi, does it still work for all of you? I'm having the same issue on my mac (trying to import the extension 'xla_extension.so').

Here is the detailed error message:

`Python 3.7.4 (default, Aug 13 2019, 15:17:50)
Type "copyright", "credits" or "license" for more information.

IPython 7.8.0 -- An enhanced Interactive Python.

import jax.numpy as np
Traceback (most recent call last):

File "", line 1, in
import jax.numpy as np

File "/Users/moudiki/anaconda3/lib/python3.7/site-packages/jax/__init__.py", line 19, in
from jax.api import *

File "/Users/moudiki/anaconda3/lib/python3.7/site-packages/jax/api.py", line 45, in
from . import ad_util

File "/Users/moudiki/anaconda3/lib/python3.7/site-packages/jax/ad_util.py", line 20, in
from .tree_util import register_pytree_node

File "/Users/moudiki/anaconda3/lib/python3.7/site-packages/jax/tree_util.py", line 44, in
from .lib import pytree

File "/Users/moudiki/anaconda3/lib/python3.7/site-packages/jax/lib/__init__.py", line 40, in
from jaxlib import xla_client

File "/Users/moudiki/anaconda3/lib/python3.7/site-packages/jaxlib/xla_client.py", line 37, in
from . import xla_extension as _xla

ImportError: dlopen(/Users/moudiki/anaconda3/lib/python3.7/site-packages/jaxlib/xla_extension.so, 2): Symbol not found: __ZNSt3__118shared_timed_mutex11lock_sharedEv
Referenced from: /Users/moudiki/anaconda3/lib/python3.7/site-packages/jaxlib/xla_extension.so
Expected in: /usr/lib/libc++.1.dylib
in /Users/moudiki/anaconda3/lib/python3.7/site-packages/jaxlib/xla_extension.so`

Please open a new issue with a description of how you installed JAX

ok, thanks

Installed jax with (on Ubuntu inside WSL)

pip3 install --upgrade jax jaxlib

While import anything from jax I get the error

ValueError: jaxlib is version 0.1.23, but this version of jax requires version 0.1.26.

And no version 0.1.26 is available -

 ✘  .../Documents/HPC  python3 --version
Python 3.7.3
 .../Documents/HPC î‚° pip3 install jaxlib==0.1.27
Collecting jaxlib==0.1.27
  Could not find a version that satisfies the requirement jaxlib==0.1.27 (from versions:
0.1, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5, 0.1.6, 0.1.7, 0.1.8, 0.1.9, 0.1.11, 0.1.12, 0.1.1
3, 0.1.14, 0.1.15, 0.1.16, 0.1.17, 0.1.18, 0.1.19, 0.1.20, 0.1.21, 0.1.22, 0.1.23)
No matching distribution found for jaxlib==0.1.27

You need to upgrade your pip (pip install --upgrade pip)

Even with the latest PyPI binaries the problem keeps happening in my case:

ImportError: dlopen(/usr/local/lib/python3.7/site-packages/jaxlib/xla_extension.so, 2): Symbol not found: __ZNSt3__118shared_timed_mutex11lock_sharedEv
  Referenced from: /usr/local/lib/python3.7/site-packages/jaxlib/xla_extension.so
  Expected in: /usr/lib/libc++.1.dylib
Was this page helpful?
0 / 5 - 0 ratings

Related issues

shyoshyo picture shyoshyo  Â·  26Comments

ericmjl picture ericmjl  Â·  53Comments

alexbw picture alexbw  Â·  26Comments

NeilGirdhar picture NeilGirdhar  Â·  23Comments

dwang55 picture dwang55  Â·  22Comments