Cuda For Mac Sierra

  1. Cuda For Mac Sierra Update
  2. Cuda For Mac Sierra

The best laptop ever produced was the 2012-2014 Macbook Pro Retina with 15 inch display. It has a CUDA-capable GPU, the NVIDIA GeForce GT 650M. This GPU has 384 cores and 1 GB of VRAM, and is CUDA capability 3. Although puny by modern standards, it provides about a 4X speedup over the cpu for Pytorch, and is fine for learning Pytorch and prototyping. If you have a newer MacBook Pro you are out of luck, because it either has a Radeon GPU or none at all.

The standard Mac distribution of Pytorch does not support CUDA, but it is supported if you compile Pytorch from source. There are numerous preliminary steps and 'gotchas'. Here is what you need to do. Thanks to Jack Dyson for this write up based on an earlier version that I published earlier. These instructions have been tested for:

OS : MacOS High Sierra 10.13.6 (17G14042)
GPU Driver: NVIDIA Web Driver 387.10.10.10.4.140
GPU CUDA Driver Version: 418.163
Xcode Version: 10.1 (10B61)

Downgrade to High Sierra

Cuda Driver Mac Os High Sierra 10.13 ‣ Driver support for Mac OS 10.13.2 is added in this release. ‣ Xcode 9.2 is now supported as a host compiler on Mac OS. CUDA Libraries ‣ cuBLAS 9.1.128 is an update to CUDA Toolkit 9.1 that includes GEMM performance enhancements on Tesla V100 and several bug fixes targeted for both deep learning. Updated to Sierra, now Final Draft 9 won't open Mac I have a really important document on Final Draft 9, and the app won't open at all since I updated to Sierra tonight. Final Draft 11 will only work with Mac OS 10.12 and above or Windows 10 and above. If you are entering the Big Break Contest, please disregard this warning.

Check that you are running Mac OS X High Sierra (10.13.6). If you have an older version, upgrade. If you have a newer version you will need to downgrade; Apple banished CUDA with Mojave and later versions of the OS. Downgrading OS X requires creating a bootable USB memory stick installer and erasing your laptop's hard disk.

Install Xcode

Installing Nvidia Web Drivers on High Sierra can be a nightmare for those using Nvidia graphics cards by being greeted by a black screen on boot or automatic restarting. This guide will show you the steps I go through everytime I do a fresh install of macOS High Sierra with an Nvidia Graphics Card. The black screen problem is an issue that first appeared on High Sierra build (17A405) and is. Here I will show you how to fix the Cuda drivers problem for the latest High Sierra 10.13.4 update.You can download the Nvidia drivers from here: http://www.

Sierra

Check that you have installed Xcode version 10.1. If you have a newer version or none at all, download it from the Apple Developer site. Rename any other version of Xcode you have installed, and then copy it to /Applications. Open Xcode, and under preferences, select the 10.1 command line tools. Close Xcode and open a terminal. Run

xcode-select --install
to reinstall the command line tools, because sometimes the Xcode application fails to install certain header files.

Install NVIDIA Drivers

Install the NVIDIA Quadro and Geforce OS X Driver 387.10.10.10.40.140.

Add to your .profile and reboot:

export PATH=/Developer/NVIDIA/CUDA-10.0/bin${PATH:+:${PATH}}
export DYLD_LIBRARY_PATH=/usr/local/cuda/lib:$DYLD_LIBRARY_PATH

Install NVIDIA cuDNN 7.6.5.

Install Conda

Install Anaconda. Create an environment named ptc that includes pip, activate it, and install libraries:

Cuda For Mac Sierra Update

conda create --name ptc python=3.7
conda activate ptc
conda install numpy ninja pyyaml mkl mkl-include setuptools cmake cffi typing_extensions future six requests dataclasses
conda install pkg-config libuv

Build Pytorch

Now you are ready to build Pytorch with Cuda!

conda activate ptc
git clone --recursive https://github.com/pytorch/pytorch
Cuda

Finally you build:

cd pytorch
export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-'$(dirname $(which conda))/../'}
MACOSX_DEPLOYMENT_TARGET=10.9 CC=clang CXX=clang++ python setup.py install

Post Installation

conda activate ptc
pip install torchvision

Reboot and test that pytorch with CUDA is working:

conda activate ptc
python
import torch
torch.cuda.is_available()
If python does not print 'true', something has gone wrong.

Install ptc as a kernel for jupyter notebooks.

conda deactivate
conda install ipykernel
python -m ipykernel install --user --name ptc --display-name 'Python 3.7 (ptc)'

When a program first invokes CUDA, a warning message will be printing stating that the GPU is too old. The message can be ignored - CUDA will indeed work! In order to eliminate the message, edit the file

~/anaconda3/envs/ptc/lib/python3.6/site-packages/torch/cuda/__init__.py
and in the definition of the function _check_capability() eliminate the string
capability(3,0) or

Download Pytorch examples and compare time required with and without cuda. Note that these examples require Torchvision.

git clone https://github.com/pytorch/examples
cd examples/mnist
conda activate ptc
time python main.py >/dev/null
real 1m38.430s
user 2m6.163s
sys 0m7.762s
time python main.py --no-cuda >/dev/null
real 5m47.750s
user 37m22.609s
sys 1m23.813s

Cuda For Mac Sierra

For the non-CUDA case, user time is greater than real time because Pytorch makes use of all 8 cpu hyperthread cores.

Congratulations, you are ready to set the deep learning world on fire!

Henry Kautz, 21 December 2020