# CUDA 9.0 ## nVIDIA Driver - [x] `sudo add-apt-repository ppa:graphics-drivers/ppa` - [x] `sudo apt update` - [x] Install using `Software & Updates` GUI `Additional Drivers` - [x] Restart ## Degradation Installed driver is `NVIDIA-SMI 430.64 | Driver Version: 430.64 | CUDA Version: 10.1`, but [TensorFlow 1.12.0 only supports CUDA 9.0](https://www.tensorflow.org/install/source#gpu). ### Removal - [x] `sudo apt --purge remove "cublas*" "cuda*"` - [x] `sudo apt --purge remove "nvidia*"` - [x] `sudo rm -rf /usr/local/cuda*` - [x] `sudo apt-get autoremove && sudo apt-get autoclean` - [x] `sudo reboot` ### Build Installation - [x] `sudo apt-get install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev` - [x] `sudo apt-get update` - [x] `sudo apt-get upgrade` - [x] `sudo reboot` ### CUDA and CuDNN Installation - [x] `wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.0.176-1_amd64.deb` - [x] `wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libcudnn7_7.0.5.15-1+cuda9.0_amd64.deb` - [x] `wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libcudnn7-dev_7.0.5.15-1+cuda9.0_amd64.deb` - [x] `wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libnccl2_2.1.4-1+cuda9.0_amd64.deb` - [x] `wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libnccl-dev_2.1.4-1+cuda9.0_amd64.deb` - [x] `sudo dpkg -i cuda-repo-ubuntu1604_9.0.176-1_amd64.deb` - [x] `sudo dpkg -i libcudnn7_7.0.5.15-1+cuda9.0_amd64.deb` - [x] `sudo dpkg -i libcudnn7-dev_7.0.5.15-1+cuda9.0_amd64.deb` - [x] `sudo dpkg -i libnccl2_2.1.4-1+cuda9.0_amd64.deb` - [x] `sudo dpkg -i libnccl-dev_2.1.4-1+cuda9.0_amd64.deb` - [x] `sudo apt-get update` - [x] `sudo apt-get install cuda=9.0.176-1` - [x] `sudo apt-get install libcudnn7-dev` - [x] `sudo apt-get install libnccl-dev` - [x] `sudo reboot` ### Environment Variables Initialization - [x] `sudo echo 'export PATH=/usr/local/cuda-9.0/bin:$PATH' >> ~/.bashrc` - [x] `sudo echo 'export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc` - [x] `sudo reboot` ### Verification - `nvcc --version` https://yangcha.github.io/CUDA90/ ## Admin Initialization on Boot ### GeForce RTX 2080 SUPER `echo 0 | sudo tee -a /sys/bus/pci/devices/0000:01:00.0/numa_node` ### Reference https://stackoverflow.com/questions/44232898/memoryerror-in-tensorflow-and-successful-numa-node-read-from-sysfs-had-negativ