Pytorch를 pip로 설치하면 간단 할 것 같은데, 막상 설치하려고 하면 Pytorch버전에 따라 CUDA 버전, python 버전을 고려해야하고, CUDA 버전은 그래픽카드를 고려해야합니다. 이 글에서는 Pytorch 버전에 따른 개발 환경셋팅 방법에 대해 다룹니다.
1. Pytorch 버전 체크
필요한 pytorch버전을 체크합니다. 오픈소스를 빌드해보고자 한다면, root 폴더의 requirements.txt 이나 environment.yml으로 확인 할 수 있습니다.
필요한 버전이 없다면 link에 언급된 최신버전을 타겟으로 아래 글을 읽어주시길 바랍니다.
2. CUDA 버전 호환 체크
link 에서 ctrl+f 눌러 설치하고 자하는 pytorch버전을 찾습니다. 여기선 예시로 1.12.1버전을 찾아보엤습니다. 언급된 CUDA버전 중에 하나를 설치해야 합니다.
# ROCM 5.1.1 (Linux only)
pip install torch==1.12.1+rocm5.1.1 torchvision==0.13.1+rocm5.1.1 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/rocm5.1.1
# CUDA 11.6
pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu116
# CUDA 11.3
pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu113
# CUDA 10.2
pip install torch==1.12.1+cu102 torchvision==0.13.1+cu102 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu102
# CPU only
pip install torch==1.12.1+cpu torchvision==0.13.1+cpu torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cpu
최신 GPU라면 가장 높은 CUDA버전을 설치하면 되지만, 연식이 되는 GPU라면 Graphic카드부터 체크해야 합니다. 아래 명령어로 GPU 모델명을 확인합니다.
$ ubuntu-drivers devices
...
vendor : NVIDIA Corporation
model : GA106 [GeForce RTX 3060 Lite Hash Rate]
...
제 GPU는 RTX 3060입니다. wikipedia-GPUs-support 에서 RTX 3060을 찾으면
capability버전이 8.6이고 architecture가 Ampere임을 볼 수 있습니다.
하나의 예시로, CUDA 11.0은 capability 버전이 3.5~8.0만 호환한다는 의미를 가집니다.
때문에 제가 갖고 있는 3060GPU는 capability가 8.6이기 때문에, CUDA 11.1~12.4 를 호환하게 됩니다. (위 표의 최신버전은 wikipedia-GPUs-support 확인 바랍니다.)
3. Graphic Driver 및 CUDA 설치
아래 명령어로 그래픽 드라이버 설치를 확인합니다.
$ nvidia-smi
저 같은 경우 여러 오픈소스를 실행하는 경우가 많아서, 여러 CUDA버전이 필요하므로 Multi CUDA 환경을 주로 셋팅합니다. 해당 방법에 대해서는 다른 글(link)로 다루었습니다. 해당 글을 요약하자면,
1. link 에서 본인의 GPU에서 설치 할 수 있는 가장 높은 CUDA버전과 필요한 CUDA 버전을 다운로드 합니다.
2. 가장 높은 버전의 CUDA Toolkit과 Driver를 설치하고, 필요한 CUDA버전의 CUDA Toolkit만 설치합니다.
4. Python 버전 호환 체크
release-compatibility-matrix 에 언급되어 있습니다. 모든 버전에 대해선 언급되어 있지 않네요. Pytorch 2.0 기준으로 python 호환 버전이 바뀐다고 보면 됩니다.
Pytorch 2.0이상의 경우 3.8~3.11, 그 이하의 경우 3.7~3.10입니다.
5. Python 설치 & Pytorch 설치
총 3가지 방법을 소개합니다. 5.1 또는 5.2 또는 5.3 셋중에 한가지 방법으로 설치하면 됩니다.
5-1. Conda
회사에서는 라이센스 이슈로 사용못하는 방법입니다. '2. CUDA버전 호환 체크'에 언급한 link에서 맞는 버전을 찾아 conda 명령어로 설치를 진행합니다. python버전이 자동으로 맞춰져 설치됩니다.
5-2. Pip
5-2-1. Python
Python도 여러 버전을 설치하는 것을 권장합니다. 2가지 방법이 있습니다.
방법1) apt-get install : 설치된 python프로그램은 /usr/bin/에 위치해있습니다
$ sudo apt-get install python3.8
방법2) 수동 설치 : 설치된 python프로그램은 /usr/local/bin에 위치해있습니다.
python.org/downloads 에서 python버전을 선택 후, Ubuntu의 경우 Gzipped source tarball로 다운 받습니다.
$ sudo tar xzf Python-x.x.x.tgz
$ cd Python-x.x.x
$ sudo ./configure --enable-optimizations # 에러가 발생한다면 gcc버전 체크
$ sudo make install
2가지 방법 중 하나로 설치가 완료됬다면, 가상환경을 만들어서 쓰는 것을 권장합니다.
$ cd myproject1
$ /usr/local/bin/python3.8 -m pip install virtualenv --user # virtualenv 설치
$ /usr/local/bin/python3.8 -m virtualenv .env_py38 # 가상환경 생성
$ ls -al # 가상환경 폴더 생성 확인
$ source .env_py38/bin/activate # 가상환경 실행
(.env_py38)$ python --version # 가상환경 내에서 python버전 확인
(.env_py38)$ deactivate # 가상환경 종료
$
5-2-2. Pytorch
'2. CUDA버전 호환 체크' 에 언급한 link 에서 맞는 pytorch버전을 찾아 설치를 진행합니다. pip 명령어로 설치합니다.
5-3. Docker
Python/Pytorch를 설치하는 다른 가상환경 셋팅 방법입니다.
docs.docker의 가이드에 따라 설치합니다.
hub.docker에서 맞는 torch, cuda 버전을 찾아서 설치합니다.
'Etc' 카테고리의 다른 글
[Ubuntu] CUDA 설치 & Multi CUDA 설치 (3) | 2024.04.28 |
---|---|
[개념 정리] GPU 메모리 구조 및 용어 (7) | 2024.01.24 |
[후기] AI 서비스 개발 실패 후기 (10) | 2023.12.11 |
[Ubuntu] 윈도우에서 Ubuntu로 원격 접속 설정 (1) | 2023.05.07 |
[정보 공유] Computer Vision 학회 / 대회 일정 (0) | 2023.02.13 |
댓글