-
Notifications
You must be signed in to change notification settings - Fork 2.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Building error on ARM Device #4994
Comments
We're currently moving our jaxlib build around a bit, so there might be a bit of breakage. |
I've patched in the mentioned PR. Is there somewhere in the files I need to specify that I'm building on an ARM device / aarch64 platform? Previously, I used the guidance specified in #773. But I noticed the patch modifies the files where I would specify that |
One thing that needs fixing is this line in
Specifying |
So I'm getting the following errors:
Any ideas on how I can resolve this? |
I'm having a very similar "permission denied" problem on Ubuntu while building for an Intel CPU. I'm using master as of today, which includes #4982. I tried both the downloaded bazel 3.1.0 and baselisk with 3.7.0. Build options: Error: |
Yeah, I tried rebuilding it after pulling the master including #4982 and I get the same error as @tomweingarten above. Here's my output:
|
I have absolutely no idea what I'm doing, but I managed to get this to build with a few hacks:
YMMV :) |
Nice to know. Do the tests pass? |
I can confirm that this works! I managed to build this on an ARM device with these changes and some changes from earlier. Now to run some tests and see if it's actually working. |
I get a ton of However, for my use case of JAX in my project, it seems to be working just fine? Which is a little strange but I wonder if it the tests crashing have something to do with the ARM device (Jetson TX2) I am using. |
Similarly the tests do not pass but my training loop runs. Incidentally should we add I also noticed a lot of tests fail with CUDA OOM, I assume because the tests are running in parallel? I was only use a couple hundred MB of GPU RAM with other apps. Is there a way to tell pytest to only run one CUDA test at a time? |
If you are using a GPU, you either need to not run the tests in parallel ( We recommend It would be helpful if we could figure out why the permissions problem happens for your tmpdir. Is I guess we can definitely work around the problem by always using a subdirectory of the source tree; you should not choose |
Thanks! I followed the commands in the documentation here: https://jax.readthedocs.io/en/latest/developer.html#running-the-tests. Doing that gave an error that I needed to install pytest-tornasync -- but uninstalling all the pytest packages and reinstalling without tornasync seems to work fine, so it must have been a weird dependency glitch. /tmp/ permissions are standard for me: Is it possible that the change to build_wheel.py is causing it to look for files in the tmp directory even though they're being built in the working directory? So the permissions error is actually because it's unable to find the files? Seems weird but when I looked at the /tmp directory during build I didn't see anything there. I'm re-running the tests now to see if they pass. |
Yes this sounds like a pytest mystery of some kind.
I'm actually wondering more about mount options. Try:
Is
Well, that |
Good thought, but unfortunately /tmp/ is not mounted separately, it's a directory in the root mount with the standard Ubuntu permissions: |
I suspect #5051 may fix the permissions error. Try it out? |
That did the trick! |
Closing. Keep us posted on how well things work on the Jetson TX2! |
So I'm trying to build JAX from source for the NVIDIA Jetson TX2 which is an ARM device.
I've got bazel up and running and it almost builds up until the following error:
Looking more closely, I notice I get a permission error thrown at me for this path:
PermissionError: [Errno 13] Permission denied: '/home/nvidia/jax/build/jaxlib/cusolver_kernels.so'
I've tried modifying the permission with chmod and chown but with no luck.
I'd really appreciate if anyone had any pointers or guidance to resolving this, thank you!
The text was updated successfully, but these errors were encountered: