CUDA Installation
#The installation guide can be found here.Supported GPU is listed here.
NOTE: In the official installation, the supported Ubuntu is 20.04. However, it seems the current version of CUDA (11.5.1) is compatible with Ubuntu 21.10.
My PC and OS:
- Ubuntu 21.10
- GeForce GTX 1050
Check the version of Ubuntu
1
2
3
4
5
6
| yang@yzubuntu:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 21.10
Release: 21.10
Codename: impish
|
Check the version of Linux Kernel.
1
2
| yang@yzubuntu:~$ uname -r
5.13.0-23-generic
|
check the GPU
#1
2
3
| yang@yzubuntu:~$ lspci | grep -i nvidia
01:00.0 VGA compatible controller: NVIDIA Corporation GP107 [GeForce GTX 1050] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GP107GL High Definition Audio Controller (rev a1)
|
Pre-installation
#gcc
#1
2
3
4
5
| yang@yzubuntu:~$ gcc --version
gcc (Ubuntu 11.2.0-7ubuntu2) 11.2.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
kernel headers and development packages
#1
| yang@yzubuntu:~$ sudo apt-get install linux-headers-$(uname -r)
|
Install
#Download the *.deb file and install
#1
2
3
4
5
6
7
| wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.5.1/local_installers/cuda-repo-ubuntu2004-11-5-local_11.5.1-495.29.05-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2004-11-5-local_11.5.1-495.29.05-1_amd64.deb
sudo apt-key add /var/cuda-repo-ubuntu2004-11-5-local/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda
|
Post-installation
#The following steps must be done to make sure Ubuntu can find the location of nvcc
1
2
| yang@yzubuntu:~/Downloads$ echo 'export PATH=/usr/local/cuda-11.5/bin${PATH:+:${PATH}}' >> ~/.bashrc
yang@yzubuntu:~/Downloads$ echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.5/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}' >> ~/.bashrc
|
Check if the process is started.
1
| yang@yzubuntu:~/Downloads$ systemctl status nvidia-persistenced
|
Check CUDA version
#1
2
3
4
5
6
| yang@yzubuntu:~/Downloads$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Thu_Nov_18_09:45:30_PST_2021
Cuda compilation tools, release 11.5, V11.5.119
Build cuda_11.5.r11.5/compiler.30672275_0
|
CUDA Example
#One example of using CUDA can be found here.
Wayland disappears after CUDA installation
#By default, Ubuntu 21.10 uses wayland instead of X11. However, after CUDA installation, there is no option to choose wayland when logging into the system. This needs to be checked.
Pytorch
#The official installation guide can be found here
NOTE: It seems Pytorch supports CUDA 11.1. My CUDA version is 11.4. The installation process did not result into error. But it needs further test with running projects.
Make a virtual environment
#1
2
3
4
5
6
| yang@yzubuntu:~/Desktop/pytorch_test$ virtualenv --python=/usr/local/bin/python3.8 pytorch_test
created virtual environment CPython3.8.10.final.0-64 in 232ms
creator CPython3Posix(dest=/home/yang/Desktop/pytorch_test/pytorch_test, clear=False, no_vcs_ignore=False, global=False)
seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/yang/.local/share/virtualenv)
added seed packages: pip==21.1.2, setuptools==57.0.0, wheel==0.36.2
activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
|
Activate the virtual env
#1
2
| yang@yzubuntu:~/Desktop/pytorch_test$ source pytorch_test/bin/activate
(pytorch_test) yang@yzubuntu:~/Desktop/pytorch_test$ pip3 install torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio==0.9.1 -f https://download.pytorch.org/whl/torch_stable.html
|
Test the Installation
#Create a file test.py and add the following.
1
2
3
| import torch
x = torch.rand(5, 3)
print(x)
|
1
2
3
4
5
6
| (pytorch_test) yang@yzubuntu:~/Desktop/pytorch_test$ python test.py
tensor([[0.2932, 0.9057, 0.3990],
[0.6864, 0.6373, 0.3777],
[0.4606, 0.1394, 0.6477],
[0.0674, 0.8054, 0.0522],
[0.9636, 0.1747, 0.5445]])
|
Check Pytorch Use CUDA
#Create a file test2.py and add the following.
1
2
3
4
| import os
import torch
device = 'cuda' if torch.cuda.is_available() else 'cpu'
print('Using {} device'.format(device))
|