리눅스 환경에서 PyTorch 환경을 구축한다. 우선 CUDA 관련 패키지를 제거하고 새로 설치한다.
sudo apt --purge remove "*nvidia*"
sudo apt autoremove
sudo apt update
sudo apt install -y nvidia-cuda-toolkit
설치가 완료되면 다음 명령어로 설치된 버전을 확인한다.
nvcc --version
다음으로 cuDNN을 설치한다.
cuDNN 9.7.0 Downloads | NVIDIA Developer
cuDNN 9.7.0 Downloads
developer.nvidia.com
CUDA 버전에 맞는 cuDNN을 설치한다.
환경에 맞게 선택해주면 아래에 설치 명령어가 생성된다. 이 명령어를 입력해준다.
wget https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/linux-x86_64/cudnn-linux-x86_64-9.7.0.66_cuda11-archive.tar.xz
이 명령어를 입력해준다.
tar -xvf cudnn-linux-x86_64-9.7.0.66_cuda11-archive.tar.xz
그리고 다운받은 파일을 압축해제한다.
cuDNN의 헤더 파일과 라이브러리를 CUDA 디렉터리로 복사한다. 이를 위해 cuda 설치 디렉터리를 확인한다.
sudo find / -type d -name "cuda*"
일반적으로는 /usr/local/cuda 또는 /usr/local/cuda-11.x 등에 설치되어야 하지만, 필자의 경우 /usr/lib/cuda에 설치되어 있다.
따라서 이 경로를 /usr/local/cuda로 연결해준다.
sudo ln -s /usr/lib/cuda /usr/local/cuda
ls -l /usr/local | grep cuda
이제 cuDNN 파일을 /usr/local/cuda로 복사한다.
sudo cp cudnn-linux-x86_64-9.7.0.66_cuda11-archive/include/* /usr/local/cuda/include/
sudo cp cudnn-linux-x86_64-9.7.0.66_cuda11-archive/lib/* /usr/local/cuda/lib64/
그리고 읽기 권한을 설정해준다.
sudo chmod -R a+r /usr/local/cuda/include/
sudo chmod -R a+r /usr/local/cuda/lib64/
권한 설정 후, cuDNN이 제대로 설치되었는지 확인한다.
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
정상적으로 설치되었음을 확인할 수 있다.
이제 PyTorch를 설치한다.
파이토치 한국 사용자 모임 (PyTorch Korea User Group)
파이토치 한국 사용자 모임에 오신 것을 환영합니다. 딥러닝 프레임워크인 파이토치(PyTorch)를 사용하는 한국어 사용자들을 위해 문서를 번역하고 정보를 공유하고 있습니다.
pytorch.kr
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
설치가 완료되면 WSL에서 PyTorch와 CUDA를 사용하기 위해 /usr/local/cuda/bin과 /usr/local/cuda/lib64을 환경변수에 추가해주어야 한다.
아래 명령어를 실행해 환경 변수를 추가하고 이를 ~/.bashrc에 저장한다.
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
echo $PATH
echo $LD_LIBRARY_PATH
환경 변수 확인을 위한 명령어
이제 PyTorch와 CUDA가 정상적으로 작동하는지 확인해본다.
import torch
print(torch.__version__) # PyTorch 버전 출력
print(torch.cuda.is_available()) # True: GPU 사용 가능
print(torch.cuda.get_device_name(0)) # GPU 이름 확인
print(torch.backends.cudnn.version()) # cuDNN 버전 출력
정상적으로 실행되는 것을 확인할 수 있다.
'Linux' 카테고리의 다른 글
[Linux] PyTorch 모델을 C++ 포팅으로 사용하기 - ONNX Runtime 설치 (0) | 2025.02.11 |
---|---|
[VMware][OpenCV] Ubuntu 카메라 사용 설정 (1) | 2025.02.05 |
[VMware][OpenCV] Ubuntu SSH 연결 시 GUI 사용 설정 (0) | 2025.02.05 |
[OpenCV] Linux 환경에서 OpenCV 설치 및 사용 (0) | 2025.01.27 |
[Linux] Linux Terminal on Window - WSL (0) | 2025.01.12 |