CUDA๋ฅผ ์ค์น ์์ driver version์ ๋ง๋ version์ ์ค์นํด์ผ ํ๊ณ ,
CUDA version์ ๋ง๋ version์ PyTorch๋ฅผ ์ค์นํด์ผ ํ๋ค.
์ฐธ๊ณ : Driver & Cuda & PyTorch version ํ์ธ
1. Nvidia ๋๋ผ์ด๋ฒ ์ค์น
ubuntu 18.04์์ nvidia ๋๋ผ์ด๋ฒ, cuda, cudnn ์ค์นํ๊ธฐ
1) ubuntu ํจํค์ง ์ ๋ฐ์ดํธ ๋ฐ ์ถ๊ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น
sudo apt update
sudo apt install -y build-essential
sudo apt-get install -y freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev libglfw3-dev libgles2-mesa-dev
sudo apt-get install -y libfreeimage3 libfreeimage-dev
2) nouveau ๋๋ผ์ด๋ฒ blacklist ๋ฑ๋ก
sudo vi /etc/modprobe.d/blacklist-nouveau.conf
#๋ค์ ๋ด์ฉ์ ์ถ๊ฐ
blacklist nouveau
options nouveau modeset=0
3) ์ปค๋ ๋ฆฌ๋น๋ ๋ฐ ์ฌ๋ถํ , noveau ๋นํ์ฑํ ํ์ธ
sudo update-initramfs –u
sudo reboot
lsmod | grep nouveau #์๋ฌด๊ฒ๋ ์๋จ๋ฉด ์ ์
4) Repository ์ถ๊ฐ
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
5) ์ค์น ๊ฐ๋ฅ nvidia ๋๋ผ์ด๋ฒ ๋ชฉ๋ก ํ์ธ ๋ฐ ์ค์น
apt-cache search nvidia | grep nvidia-driver #์ค์น ๊ฐ๋ฅ ๋๋ผ์ด๋ฒ ๋ชฉ๋ก ํ์ธ
sudo apt install -y nvidia-driver-470 #์ค์น
sudo reboot #์ฌ์์
6) ์ค์น ์๋ฃ ํ์ธ
2. CUDA & Driver compatibility
๊ฐ driver version๊ณผ ํธํ๋๋ CUDA version์ ๋ค์ ๋งํฌ์์ ํ์ธ๊ฐ๋ฅํ๋ค.
[1] https://docs.nvidia.com/deploy/cuda-compatibility/ (11.x, 10.x)
[2] https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#cuda-major-component-versions__table-cuda-toolkit-driver-versions (11.0~11.4)
์ ํ๋ ๊ฐ CUDA version์ ํธํ๊ฐ๋ฅํ driver์ ์ต์ ์ฌ์์ด๊ณ , ์๋๋ CUDA Toolkit์ ํฌํจ๋ driver version์ด๋ผ๊ณ ํ๋๋ฐ.. ๋ฌด์จ ์ฐจ์ด๊ฐ ์๋์ง ์ ๋ชจ๋ฅด๊ฒ ๋ค.
๊ณต์ ํํ์ด์ง [2] ์์๋ Toolkit driver version๊ณผ Minimum required version์ด ๋ค๋ฅธ ๊ฒฝ์ฐ๋ compatibility mode์์ ํ์ฉ๋๋ค ๋ผ๊ณ ์ ํ ์๋๋ฐ.. CUDA Toolkit์ ์ค์นํ๋ฉด ์๋์ผ๋ก ์ค์น๋๋ driver version์ด Toolkit driver version์ด๊ณ , Minimum required version์์๋ ํธํ๋๋ค ๋ผ๋ ๋ป์ธ ๊ฒ ๊ฐ๋ค.
3. CUDA installation
driver version๊ณผ ๊ทธ์ ๋ง๋ CUDA version์ ํ์ธํ์ผ๋ฉด,
์ค์นํ CUDA version์ ๊ฒฐ์ ํ๋ค.
๊ฐ์ฅ ์ต์ CUDA๋ฅผ ์ค์นํ๋ ๊ฒ์ด ์ข์ ๊ฒ์ด ์๋๋ค.
PyTorch ์ญ์ CUDA version์ ๋ง๊ฒ ์ค์นํด์ผ ํ๊ณ , ๊ฐ PyTorch version๋ง๋ค ์ง์ํ๋ CUDA version์ด ์ ํด์ ธ ์๊ธฐ ๋๋ฌธ์..
์๋ 3. ์ ๋ณด๊ณ , ๋ณธ์ธ์ด ์ค์นํ PyTorch version๊ณผ ํธํ๋๋ CUDA๋ฅผ ์ค์นํ๋ ๊ฒ์ ์ถ์ฒํ๋ค.
1) Uninstall previous version
๋ง์ฝ ์ด๋ฏธ CUDA๊ฐ ๊น๋ ค ์๋ค๋ฉด, ์๋ก์ด version์ ์ค์นํ๊ธฐ ์ ์ ๋จผ์ ์ญ์ ํด์ผ ํ๋ค.
์๋ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ๋ค.
Linux(์ฐ๋ถํฌ)์์ CUDA ๋ค์ด๊ทธ๋ ์ด๋ํ๊ธฐ
CUDA (+CUDA Toolkit), Nvidia Driver, cuDNN ์ฐ๋ถํฌ 20.04 ์ค์น
sudo rm /etc/apt/sources.list.d/cuda* #nvidia/cuda ํจํค์ง ์ ๊ฑฐ
sudo apt remove --autoremove nvidia-cuda-toolkit #nvidia-cuda-toolkit ์ ๊ฑฐ
sudo apt-get purge nvidia* && sudo apt-get autoremove && sudo apt-get autoclean && sudo rm -rf /usr/local/cuda* #nvidia ๊ด๋ จ ํจํค์ง ์ ๊ฑฐ
sudo reboot
2) Install latest version
๊ฐ์ฅ ์ต์ version์ CUDA๋ ์๋ ๋งํฌ์์ ๋ค์ด๋ก๋ํ ์ ์๋ค.
https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu
์ด์์ฒด์ ์ Installer Type์ ์ ํํ๋ฉด ์ค์น ๋ช ๋ น์ด๋ฅผ ์๋ ค์ค๋ค.
(CUDA 11.4๋ Ubuntu 16.04๋ ์ง์์ ์ํ๋ ๋ณด๋ค.)
์ฐธ๊ณ : cuda ์ค์น ์ ์ ์์ฌํญ (์ถ์ฒ)
deb(local) ์ค์น ์ cuda ๋ฒ์ ๊ณผ ๋งค์นญ๋ nvidia ๋๋ผ์ด๋ฒ๊ฐ ๊ฐ์ด ์ค์น๋๋ค๊ณ ํ๋ค. ์ถฉ๋์ด ์ผ์ด๋ ์๋ ์๊ธฐ ๋๋ฌธ์ ๋๋ผ์ด๋ฒ ๋ฒ์ ์์ด ์ค์นํ ๊ฒฝ์ฐ runtime(local)๋ก ์ค์นํ๋ฉด ๋๋ค๊ณ ํจ. runtime(local)์ ์ด์ฉํ ์ค์น๋ ์ ๋งํฌ ์ฐธ๊ณ
3) Install previous version
์ด์ version์ CUDA๋ ๋ค์ ๋งํฌ์์ ๋ค์ด๋ก๋ ๊ฐ๋ฅํ๋ค.
https://developer.nvidia.com/cuda-toolkit-archive
์ํ๋ version์ ํด๋ฆญํ๊ณ , ๋ง์ฐฌ๊ฐ์ง๋ก ์ด์์ฒด์ ์ Installer Type๋ฅผ ์ ํํ๋ฉด ์ค์น๋ฅผ ์ํ ๋ช ๋ น์ด๋ฅผ ์๋ ค์ค๋ค.
4) Setting Environment variables
Cuda๋ฅผ (์ฌ)์ค์นํ์ผ๋ฉด ํ๊ฒฝ๋ณ์๋ฅผ ์ค์ ํด์ฃผ์ด์ผ ํ๋ค.
vi .bashrc
bashrc ํ์ผ์ ์ด์ด ๋งจ ์๋์ ๋ค์๊ณผ ๊ฐ์ด ์ถ๊ฐ (ํน์ ์์ ) ํด์ค๋ค.
export CUDA_HOME=/usr/local/cuda-10.2
export PATH=/usr/local/cuda-10.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH
4. CUDA & PyTorch compatibility + PyTorch intallation
PyTorch๋ ์ด์ ๋ฒ์ ์ uninstall ์์ด ๋ฐ๋ก ์ค์นํด๋ ๋๋ค.
๊ฐ์ฅ ์ต์ version์ PyTorch๋ ์๋ ๋งํฌ์์ ๋ค์ด๋ก๋ํ ์ ์๋ค.
https://pytorch.org/get-started/locally/
CUDA์ ๋ง์ฐฌ๊ฐ์ง๋ก ์ค์นํ PyTorch version, ํ์ฌ ์ด์์ฒด์ , ๋ค์ด๋ก๋ํ ๋ฐฉ๋ฒ, ์ฌ์ฉํ ์ธ์ด, CUDA version์ ์ ํํ๋ฉด ๋ช ๋ น์ด๋ฅผ ์๋ ค์ค๋ค.
PyTorch v1.9.0๊ณผ 1.8.2๋ CUDA 10.2์ 11.1๊ณผ ํธํ๊ฐ๋ฅํ ๊ฒ์ ๋ณผ ์ ์๋ค.
์ด์ version์ ๋ค์ ๋งํฌ์์ ๋ค์ด๋ก๋ํ ์ ์๋ค.
https://pytorch.org/get-started/previous-versions/
์ต์ version์ฒ๋ผ ์น์ ํ๊ฒ ์๋ ค์ฃผ์ง๋ ์์ง๋ง, ๋ง์ฐฌ๊ฐ์ง๋ก PyTorch version, ํ์ฌ ์ด์์ฒด์ , ๋ค์ด๋ก๋ํ ๋ฐฉ๋ฒ, ์ฌ์ฉํ ์ธ์ด, CUDA version์ ๋ฐ๋ผ ๋ช ๋ น์ด๊ฐ ์ ๋ฆฌ๋์ด ์๋ค.
5. CUDA & Tensorflow compatibility + Tensorflow intallation
Tensorflow ์ญ์ CUDA version๊ณผ์ ํธํ์ฑ์ ํ์ธํ๊ณ ๊ทธ์ ๋ง๋ ๋ฒ์ ์ผ๋ก install/upgrade/downgradeํด์ผ ํ๋๋ฐ.. PyTorch์ ๋นํด ๋น๊ต์ ๊ฐ๋จํ๋ค.
์ฐ์ , ๋ค์ ๋งํฌ์์ CUDA version์ ๋ง๋ Tensorflow version์ ํ์ธํ๋ค.
https://www.tensorflow.org/install/source#tested_build_configurations
์ดํ pip install์ ํตํด ์๋ก์ด version์ installํ๋ฉด ๋๋ค. PyTorch์ ๋ง์ฐฌ๊ฐ์ง๋ก, uninstall์ ํ์ํ์ง ์๋ค.
pip install tensorflow==2.3.0
pip install tensorflow-gpu==2.3.0
'๐ป OS & Tools > Ubuntu' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Python package dependency๋ฅผ ์๋ ค์ฃผ๋ pipdeptree (0) | 2021.10.16 |
---|---|
apt ๊ด๋ จ ๋ช ๋ น์ด ์ ๋ฆฌ (0) | 2021.08.20 |
nvidia-smi์ nvcc๋ก ๋ณธ CUDA version์ด ๋ค๋ฅผ ๋ (3) | 2021.08.19 |
์๊ฒฉ ์๋ฒ์ ํ์ผ ์ ์ก(scp) (0) | 2020.01.07 |
Ubuntu ๋จ์ถ ๋ช ๋ น์ด ์ค์ (alias) (0) | 2020.01.02 |