Skip to content

Releases: TomHeaven/pytorch-osx-build

pytorch-1.5.0-py37-cuda10.1-cudnn7.6.5

16 Jun 01:45
Compare
Choose a tag to compare

This release is built for Pytorch 1.5.0 (py37) on Mac OS X 10.13 with GPU (CUDA) support.

Supported CUDA compute capability: 3.5,5.0,5.2,6.1,7.0.

OpenMP, CUDA 10.1 and CuDNN 7.6.5 are required. You can install OpenMP by

brew install libomp
brew link --overwrite libomp

If you are using an Nvidia Titan V GPU, ensure your GPU driver version is exactly 387.10.10.15.15.108 and CUDA driver version is 418.105.

MAGMA Support

MAGMA support is required by GPU algebra algorithms such as torch.inverse() applied to GPU tensors. You need to install a few dependencies to make it work:

  • unzip magma.zip to /usr/local/lib
  • download usr_local_lib from the master branch an put the dylib files into /usr/local/lib.

There are a few questions you may be interested in:

Q1: Why change your environment from CUDA 10/CuDNN 7.4(XCode 9.4.1) to CUDA10.1/CuDNN 7.6.5 (XCode 10.1)?
Ans: There are a few benefits to do so:

  1. CUDNN 7.6.5 brings some performance improvement especially for Nvidia Titan V.
  2. XCode 10.1 fix some compilation bugs of XCode 9.4.1, which prevent recent Tensorflow versions from successful build on macOS. In order to provide a consistent environment for Tensorflow, I have to update my environment.

Q2: Why don't use the latest CUDA 10.2?
Ans: There is no CuDNN 7.6.5 support of CUDA 10.2 from Nvidia on macOS. It seems they are ready to stop support for macOS.

Q3: Why don't use newer XCode?
Ans: Because XCode 10.1 is the latest version that is compatible with macOS 10.13.6.

Besides, Python 2.7 is deprecated for about six months and no more support will be provided.

pytorch-1.5.0-py27-py37-cuda10-cudnn74

27 Apr 03:42
Compare
Choose a tag to compare

This release is built for Pytorch 1.5.0 (py27, py37) on Mac OS X 10.13 with GPU (CUDA) support. If you need GPU ops such as nms from torchvision, install torchvision-0.6.0a0+b68adcf-cp37-cp37m-macosx_10_13_x86_64.whl from this release rather than other sources (GPU ops not included).

Supported CUDA compute capability: 3.5,5.0,5.2,6.1,7.0. (Support for compute capability 3.0 is dropped by Pytorch, do NOT use this release if you are using old GPUs with compute capability 3.0!)

OpenMP, CUDA 10.0 and CuDNN 7.4 are required. You can install OpenMP by

brew install libomp
brew link --overwrite libomp

Without MAGMA Support

Download torch-1.5.0-cp27-cp27m-macosx_10_13_intel.whl for Python 2.7 and torch-1.5.0-cp37-cp37m-macosx_10_13_x86_64.whl for Python3.7 without MAGMA (Matrix Algebra on GPU and Multicore Architectures) support. Directly install them using pip/pip3.

With MAGMA Support

All previous releases are without MAGMA support. It is required by GPU algebra algorithms such as torch.inverse() applied to GPU tensors.

Wheel package torch-1.5.0.post2-cp37-cp37m-macosx_10_13_x86_64.whl is with MAGMA support for Python 3.7. However, you need to install a few dependencies to make it work:

  • unzip magma.zip to /usr/local/lib
  • download usr_local_lib from the master branch an put the dylib files into /usr/local/lib.

Currently, there is no NCCL support in this release due to major changes made to NCCL related modules. If you need distributed GPU training in pytorch, use the release v1.4.0 with NCCL support instead.

I've manage to solve most of compilation problems in v1.5.0 with NCCL but CMake still raise errors and cannot detect AppleClang as its ASM compiler. I will try to compile with NCCL again in my spare time.

pytorch-1.4.0-py27-py37-cuda10-cudnn74

18 Feb 02:07
Compare
Choose a tag to compare

This release is built for Pytorch 1.4.0 (py27, py37) on Mac OS X 10.13 with GPU (CUDA) support. If you need GPU ops such as nms from torchvision, install torchvision-0.5.0a0+85b8fbf-cp37-cp37m-macosx_10_13_x86_64.whl from this release rather than other sources (GPU ops not included).

It contains an experimental build torch-1.4.0-cp37-cp37m-macosx_10_13_x86_64.whl_with_nccl.zip for Python 3.7 with distributed GPU training feature enabled. Now you can use distributed GPU training with gloo backend. The following code is a demo:

    import torch
    # Initializes the distributed backend which will take care of sychronizing nodes/GPUs
    torch.distributed.init_process_group(backend='gloo',  init_method='env://') # working

    # RuntimeError: NCCL error in: ../torch/lib/c10d/ProcessGroupNCCL.cpp:400, unhandled system error
    #torch.distributed.init_process_group(backend='nccl', init_method='env://')

Note nccl backend will fail at unhandled system error and there is currently no fix.

Supported CUDA compute capability: 3.5,5.0,5.2,6.1,7.0. (Support for compute capability 3.0 is dropped by Pytorch, do NOT use this release if you are using old GPUs with compute capability 3.0!)

OpenMP, CUDA 10.0 and CuDNN 7.4 are required. You can install OpenMP by

brew install libomp
brew link --overwrite libomp

OpenMPI enables only distributed CPU training, which is actually useless on Mac OS and thus removed from dependencies.

Note CUDA 10 driver cannot work normally on Mac OS 10.12. Therefore, you have to upgrade to 10.13 to use CUDA 10.

You can install python 3.7 by

brew install python

or download the latest Anaconda.

pytorch-1.3.1-py27-py37-cuda10-cudnn74

16 Nov 05:54
Compare
Choose a tag to compare

This release version is built for Pytorch 1.3.1 (py27, py37) on Mac OS X 10.13 with GPU (CUDA) support.

Supported CUDA compute capability: 3.5,5.0,5.2,6.1,7.0. (Support for compute capability 3.0 is dropped by Pytorch, do NOT use this release if you are using old GPUs with compute capability 3.0!)

OpenMP, OpenMPI, CUDA 10.0 and CuDNN 7.4 are required. You can install OpenMP and OpenMPI by

brew install libomp
brew link --overwrite libomp
brew install open-mpi

Note CUDA 10 driver cannot work normally on Mac OS 10.12. Therefore, you have to upgrade to 10.13 to use CUDA 10.

You can install python 3.7 by

brew install python

or download the latest Anaconda.

pytorch-1.3.0-py27-py37-cuda10-cudnn74

12 Oct 02:54
Compare
Choose a tag to compare

This release version is built for Pytorch 1.3.0 (py27, py37) on Mac OS X 10.13 with GPU (CUDA) support. If you need GPU ops such as nms from torchvision, install torchvision-0.4.0-cp37-cp37m-macosx_10_13_x86_64.whl from this release rather than other sources.

Supported CUDA compute capability: 3.5,5.0,5.2,6.1,7.0. (Support for compute capability 3.0 is dropped by Pytorch, do NOT use this release if you are using old GPUs with compute capability 3.0!)

OpenMP, OpenMPI, CUDA 10.0 and CuDNN 7.4 are required. You can install OpenMP and OpenMPI by

brew install libomp
brew link --overwrite libomp
brew install open-mpi

Note CUDA 10 driver cannot work normally on Mac OS 10.12. Therefore, you have to upgrade to 10.13 to use CUDA 10.

You can install python 3.7 by

brew install python

or download the latest Anaconda.

pytorch-1.2.0-py27-py37-cuda10-cudnn74

12 Sep 16:40
Compare
Choose a tag to compare

This release version is built for Pytorch 1.2.0 (py27, py37) on Mac OS X 10.13 with GPU (CUDA) support.

Supported CUDA compute capability: 3.5,5.0,5.2,6.1,7.0. (Support for compute capability 3.0 is dropped by Pytorch, do NOT use this release if you are using old GPUs with compute capability 3.0!)

OpenMP, OpenMPI, CUDA 10.0 and CuDNN 7.4 are required. You can install OpenMP and OpenMPI by

brew install libomp
brew link --overwrite libomp
brew install open-mpi

Note CUDA 10 driver cannot work normally on Mac OS 10.12. Therefore, you have to upgrade to 10.13 to use CUDA 10.

You can install python 3.7 by

brew install python

or download the latest Anaconda.


【Known Issue with original pytorch 1.2.0】Original pytorch 1.2.0 will produce RuntimeError: CUDA error: unspecified launch failure and cannot use CUDA on Mac OS X. I created an issue in pytorch repo pytorch/pytorch#25693 to report the problem and used pull pytorch/pytorch#25553 to fix the problem. The release is working now.

pytorch-1.1.0-py27-py37-cuda10-cudnn74

03 May 09:58
Compare
Choose a tag to compare

This release version is built for Pytorch 1.1.0 (py27, py37) on Mac OS X 10.13 with GPU (CUDA) support.

Supported CUDA compute capability: 3.0,3.5,5.0,5.2,6.1,7.0. (All possible capabilities are added according to user request.)

OpenMP, OpenMPI, CUDA 10.0 and CuDNN 7.4 are required. You can install OpenMP and OpenMPI by

brew install libomp
brew link --overwrite libomp
brew install open-mpi

Note CUDA 10 driver cannot work normally on Mac OS 10.12. Therefore, you have to upgrade to 10.13 to use CUDA 10.

You can install python 3.7 by

brew install python

or download the latest Anaconda.

pytorch-1.0.1-py27-py37-cuda10-cudnn74

26 Mar 08:56
Compare
Choose a tag to compare

This release version is built for Pytorch 1.0.1 (py27, py37) on Mac OS X 10.13 with GPU (CUDA) support.

Supported CUDA compute capability: 3.5,5.2,6.1,7.0. (Support for 3.0 is dropped and 7.0 is added compared with previous releases.)

OpenMP, CUDA 10.0 and CuDNN 7.4 are required. You can install OpenMP by

brew install libomp
brew link --overwrite libomp

Note CUDA 10 driver cannot work normally on Mac OS 10.12. Therefore, you have to upgrade to 10.13 to use CUDA 10.

You can install python 3.7 by

brew install python

or download the latest Anaconda.

pytorch-1.0-py27-py37-cuda10-cudnn74

20 Dec 16:23
Compare
Choose a tag to compare

This release version is built for Pytorch 1.0 (py27, py37) on Mac OS X 10.13 with GPU (CUDA) support.

OpenMP, CUDA 10.0 and CuDNN 7.4 are required. You can install OpenMP by

brew install libomp
brew link --overwrite libomp

Note CUDA 10 driver cannot work normally on Mac OS 10.12. Therefore, you have to upgrade to 10.13 to use CUDA 10.

Starting from this release, support for python 3.6 will be dropped. Please use Python 3.7 instead or use this previous release. You can install python 3.7 by

brew install python

or download the latest Anaconda.

pytorch-1.0-py27-py36-py37-cuda90-cudnn70

25 Mar 12:41
Compare
Choose a tag to compare

This release version is built for Pytorch 1.0 (py27, py36, py37) on Mac OS X 10.12+ with GPU (CUDA) support.

OpenMP, CUDA 9.0 and CuDNN 7 are required. You can install OpenMP by

brew install libomp
brew link --overwrite libomp