The pytorch ecosystem, from a single nix-user's perspective, as I get around to building it. Any user-submitted packages are welcome : ).
This repository will tag releases according to the working version of pytorch. There will also a post-fixed snapshot number when new packages are working. All releases will only be tested for python-3.6 unless otherwise noted.
-
unstable
:- darwin support for
dev
outputs - disabled test phase (for faster builds). Override
doCheck
to run the test suite. - adds a cudaArchList argument that allows users to test on the latest nvidia hardware without waiting for this package.
- adds .dev output which gives top-level access to generated C/C++ code (libtorch).
- darwin support for
-
v1.2.0-1
:- runs all tests except for utils
- adds mkl support to magma-2.5.0
- adds cuda support to openMPI
- adds openMPI support
- allows users to build NamedTensors
- allows users to get access to generated binaries from build process
- adds darwin support if cudaSupport is disabled.
- packages: (+probtorch)
-
v1.1.0
- builds without FBGEMM
- packages: None
The current features are supported:
Python-3.6.9 support | pytorch-v1.1.0 | pytorch-v1.2.0 | libtorch-v1.7.0 |
---|---|---|---|
vanilla | ✔️ | ✔️ | ✔️ |
mkl+mkldnn | ✔️ | ✔️ | ✔️ |
openMPI | ✔️ | ✔️ | ✔️ |
FBGEMM | ❌ | ✔️ | ✔️ |
Full CPU (all above)* | ✔️ | ✔️ | ✔️ |
Full CPU + NamedTensors + Binaries | ❕ | ✔️ | ✔️ |
CUDA | ✔️ | ✔️ | ✔️ |
CUDA+NCCL | ✔️ | ✔️ | ✔️ |
CUDA+NCCL+openMPI | ✔️ | ✔️ | ✔️ |
CUDA+NCCL+openMPI+mkl | ✔️ | ✔️ | ✔️ |
Full CUDA (all above)* | ✔️ | ✔️ | ✔️ |
Full CUDA + NamedTensors + Binaries | ❕ | ✔️ | ✔️ |
The ":grey_exclamation:" means that namedtensors and binaries weren't attempted in pytorch-v1.1.0.
The "*" implies that FBGEMM is not included in any of the "Full" builds in pytorch-v1.1.0, but is included for all of pytorch-v1.2.0
Suggested use is to pull in pytorch-world
as a git submodule under some nix/
folder and refer to probtorch/release.nix
for an example of how to depend on this library.
Do not reference release.nix
files as they don't generate site-packages and only output final python binaries.
Binaries can be found at pytorch-world.cachix.org
Currently, you will find binaries for the ./release.nix
file which includes pytorch-1.2-related builds.
This covers all CPU builds, which are darwin-accessible, as well as cuda-enabled pytorch built with cudatoolkit_10_0
, and libtorch
built with CUDA-9 and CPU.
This was built on NixOS with python-3.6 (pin located at ./pin/
), please file issues to help support!
You can retrieve any of these with the following:
cachix use pytorch-world
nix-build ./release.nix -A pytorch -A pytorch-mkl -A pytorch-cu