Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save MihailCosmin/affa6b1b71b43787e9228c25fe15aeba to your computer and use it in GitHub Desktop.
Save MihailCosmin/affa6b1b71b43787e9228c25fe15aeba to your computer and use it in GitHub Desktop.
Instructions for CUDA v11.8 and cuDNN 8.7 installation on Ubuntu 22.04 for PyTorch 2.0.0
#!/bin/bash
### steps ####
# verify the system has a cuda-capable gpu
# download and install the nvidia cuda toolkit and cudnn
# setup environmental variables
# verify the installation
###
### to verify your gpu is cuda enable check
lspci | grep -i nvidia
### If you have previous installation remove it first.
sudo apt purge nvidia* -y
sudo apt remove nvidia-* -y
sudo rm /etc/apt/sources.list.d/cuda*
sudo apt autoremove -y && sudo apt autoclean -y
sudo rm -rf /usr/local/cuda*
# system update
sudo apt update && sudo apt upgrade -y
# install other import packages
sudo apt install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev
# first get the PPA repository driver
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
# find recommended driver versions for you
ubuntu-drivers devices
# install nvidia driver with dependencies
sudo apt install libnvidia-common-515 libnvidia-gl-515 nvidia-driver-515 -y
# reboot
sudo reboot now
# verify that the following command works
nvidia-smi
sudo wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /"
# Update and upgrade
sudo apt update && sudo apt upgrade -y
# installing CUDA-11.8
sudo apt install cuda-11-8 -y
# setup your paths
echo 'export PATH=/usr/local/cuda-11.8/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
sudo ldconfig
# install cuDNN v11.8
# First register here: https://developer.nvidia.com/developer-program/signup
CUDNN_TAR_FILE="cudnn-linux-x86_64-8.7.0.84_cuda11-archive.tar.xz"
sudo wget https://developer.download.nvidia.com/compute/redist/cudnn/v8.7.0/local_installers/11.8/cudnn-linux-x86_64-8.7.0.84_cuda11-archive.tar.xz
sudo tar -xvf ${CUDNN_TAR_FILE}
sudo mv cudnn-linux-x86_64-8.7.0.84_cuda11-archive cuda
# copy the following files into the cuda toolkit directory.
sudo cp -P cuda/include/cudnn.h /usr/local/cuda-11.8/include
sudo cp -P cuda/lib/libcudnn* /usr/local/cuda-11.8/lib64/
sudo chmod a+r /usr/local/cuda-11.8/lib64/libcudnn*
# Finally, to verify the installation, check
nvidia-smi
nvcc -V
# install Pytorch (an open source machine learning framework)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
@aidv
Copy link

aidv commented May 18, 2024

I've been STRUGGLING with my QEMU KVM VM's that seemingly out of nowhere refused to see my GPU's.

After a few days of fiddling around I eventually figured out a solution.

  1. Turn off Secure Boot in the VM bios
  2. Purge all nvidia related stuff
  3. Install version 520 of the graphics driver
  4. Install CUDA 11.8

I created a script to make my life easier:

IMPORTANT!
⚠️ 🗣️ TURN OFF SECURE BOOT IN YOUR VM!!! 🗣️ ⚠️

Script:

#!/bin/bash

#install graphics driver 520 specifically
sudo apt purge nvidia* -y
sudo apt autoremove -y && sudo apt autoclean -y
sudo apt update && sudo apt upgrade -y
sudo apt install g++ freeglut3-dev build-essential libx11-dev libxmu dev libxi-dev libglu1-mesa libglu1-mesa-dev
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install libnvidia-common-520 libnvidia-gl-520 nvidia-driver-520 -y

#install cuda 11.8
sudo wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-ubuntu2204-11-8-local_11.8.0-520.61.05-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-11-8-local_11.8.0-520.61.05-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-11-8-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda
rm cuda-ubuntu2204.pin
rm cuda-repo-ubuntu2204-11-8-local_11.8.0-520.61.05-1_amd64.deb

echo "Install completed! Run: 'sudo reboot now' and then after reboot run 'nvidia-smi' and 'nvtop' to confirm that the GPU is recognized."
  1. Copy and paste the above into a file called `tryfixgpu.sh
  2. Then run sudo chmod +x tryfixgpu.sh
  3. Then run the script sudo ./tryfixgpu.sh

⚠️ 🗣️ AND REMEMBER TO TURN OFF SECURE BOOT!!!!!! 🗣️ ⚠️
⚠️ 🗣️ AND REMEMBER TO TURN OFF SECURE BOOT!!!!!! 🗣️ ⚠️
⚠️ 🗣️ AND REMEMBER TO TURN OFF SECURE BOOT!!!!!! 🗣️ ⚠️
⚠️ 🗣️ AND REMEMBER TO TURN OFF SECURE BOOT!!!!!! 🗣️ ⚠️
⚠️ 🗣️ AND REMEMBER TO TURN OFF SECURE BOOT!!!!!! 🗣️ ⚠️

@D1st3f
Copy link

D1st3f commented Sep 17, 2024

Install version 520 of the graphics driver

you sh installing 535

The following NEW packages will be installed:
dctrl-tools dkms libnvidia-cfg1-535 libnvidia-common-520 libnvidia-common-535 libnvidia-decode-535
libnvidia-encode-535 libnvidia-extra-535 libnvidia-fbc1-535 libnvidia-gl-520 libnvidia-gl-535
nvidia-compute-utils-535 nvidia-dkms-535 nvidia-driver-520 nvidia-driver-535 nvidia-firmware-535-535.183.01
nvidia-kernel-common-535 nvidia-kernel-source-535 nvidia-prime nvidia-settings nvidia-utils-535 pkg-config
python3-xkit screen-resolution-extra xserver-xorg-video-nvidia-535

@aidv
Copy link

aidv commented Oct 18, 2024

you sh installing 535

Weird. For me it’s installing 520

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment