Comments (3)
In general our build script produces the tags that our release builds should produce; it doesn't try to adapt the tags to the environment.
I'm a little reluctant to run auditwheel repair
because I don't want auditwheel changing the wheel.
One option would be for us to default to a relaxed tag like linux_x86_64
, and change our release builds to override the tag to a manylinux
tag.
from jax.
As to ongoing support: we're not sure yet. One likely possibility is at least 2_28, but we may go newer. (The thing pushing us to newer is that we would like to build with C++20).
from jax.
One option would be for us to default to a relaxed tag like linux_x86_64, and change our release builds to override the tag to a manylinux tag.
I think this might be easiest, because then it pushes the "generalization" step to the release process that comes after build.
I am also a bit worried about auditwheel repair
changing the wheel as well, since it tries to embed any third party SO files into the zip and changes the RPATHs to use them instead of any external ones. This can be worked around with its --exclude options, but it seems too easy to miss something. My current plan is to probably write something that uses auditwheel's functionality to modify the wheel but do it in a more controlled manner. Basically, just doing the lddtree scan for all versioned symbols, collecting the max versions of libs, and then outputting the manylinux_x_y
wheel, without any RPATH or SO file changes.
One likely possibility is at least 2_28, but we may go newer. (The thing pushing us to newer is that we would like to build with C++20).
I am positive this would make a lot of folks that use JAX on older systems very upset... all the users I am supporting right now seem to be on ubuntu 20 or EL8 derivatives which require glibc 2.28 or less. I haven't looked at the glibcpp versions on those distros but I am almost certain they are not C++20 level universally.
from jax.
Related Issues (20)
- JAX JIT Compilation Issue with jnp.std and Configuration Setting HOT 2
- FP8 XLA matmul fusion into `__cublas$lt$matmul$f8` not fully working HOT 2
- guidance on how to properly use lax.reduce on an multi-dimension array. HOT 1
- Partial of a vmap function HOT 2
- Support dlpack pinned host memory device type (kDLCPUPinned / kDLCUDAHost)
- Issue with shardmap when trying to use static arguments HOT 6
- TPUVM program hangs when using jax_compilation_cache_dir with wrong gcs directory HOT 8
- Getting different results from CPU vs. CUDA backend HOT 3
- Accidentally exponential-time analysis pass in compiler? HOT 9
- Local shards accessed using devices_indices_map are scaled by # of pods HOT 2
- Incorrect Jacobian of `jax.scipy.special.logsumexp` when `b` contains a `0` HOT 1
- Accuracy of `jax.experimental.sparse.spsolve` HOT 3
- How can I implement a custom operations with stateful resource? HOT 6
- all inputs are nans in a next step iterationwhile using `jax.scipy.optimize.minimize` HOT 1
- INVALID_ARGUMENT: Mismatched PJRT plugin PJRT API version HOT 5
- [pallas] Documentation for tpu compiler options
- Deadlock When Running distributed.initialize() on one TPU Host by Accident HOT 1
- Pipelined model(1F1B pipeline parallelism) implementation in Jax.
- Wrong normalization in FFT methods HOT 4
- DCT normalization affects distribution of spectral coefficients
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jax.