Python

Pytorch(GPU)를 위한 Python 환경 구축 - conda 외 가상환경

qlsenddl 2023. 1. 10. 17:06
728x90

 이 페이지에서는 Python도 설치되어 있지 않은 상태에서부터 GPU(cuda)를 사용할 수 있는 pytorch 개발을 위한 환경 구축 방법을 정리한다. 버전 관리를 위해 가상 환경을 만들지만 anaconda가 아닌 기본 window 상에서 가상환경을 만드는 방법*을 소개한다.(anaconda 가상 환경 생성은 Python 개발 환경 구축2: Anaconda에서 가상 환경 다루기 참고) 마지막으로 Pytorch에서 cuda, cudnn을 설치하는 복잡한 과정에 대해서 서로 버전 충돌이 나지 않게 호환성을 점검하고 최신 버전 뿐만 아니라 원하는 이전 버전의 pytorch, cuda, cudnn을 설치하는 방법에 대해서 정리한다.

 

* python과 matlab을 연동하는 경우 matlab에서 anaconda의 가상환경에 접근하는 경우 pytorch를 import하는 것 쉽지 않기 때문에 anaconda가 아닌 window에서 가상환경 만드는 법을 소개한다.(개인적으로 pyenv에서 'ExecutionMode'를 'OutOfProcess'로 설정한 후 성공한 적이 있지만, 이 후 다시 pytorch를 import하는 과정에서 에러가 발생했다. 해당 문제는 해결되면 관련해서 글을 올리도록 하겠다.)

 

1. Python 설치

Python 설치하기 참고

 

2. 가상 환경 생성 및 활성화

1) 명령 프롬프트 실행 후 가상 환경을 위치시키고 싶은 디렉토리로 이동

ex> 명령 프롬프트에 다음과 같이 명령: cd C:\Users\username\Desktop (바탕화면 디렉토리로 이동)

2) 가상 환경 생성 명령: python -m venv 가상환경이름 (ex> python -m venv example)

- 만약 다양한 버전의 python이 설치되어 있고 특정 python 버전으로 가상환경을 구축하고 싶다면 아래와 같이 입력한다.

>> python이 설치된 경로\python00\python.exe python -m venv (00은 원하는 python 버전이다. 3.6이면 36으로 입력)

ex> C:\Users\user\AppData\Local\Programs\Python\Python39\python.exe python -m venv example → python 설치 시 특별히 설치 경로 설정을 안했다면 해당 경로에 위치한다.

3) 가상환경 디렉토리로 이동 (ex> cd example)
4) 가상 환경 활성화 명령: Scripts\activate.bat

- 해당 명령 후 디렉토리 정보 앞에 '(가상환경이름)' 표시가 나면, 정상적으로 가상환경이 활성화된 것이다.

- 가상 환경 활성화 후 pip 명령으로 라이브러리를 설치하면 해당 가상환경에서만 해당 라이브러리가 설치된다.

 

3. 가상 환경에서 라이브러리 설치 명령: python -m pip install 라이브러리 이름

- 최신 버전 설치 시 라이브러리 이름만 적으면 되고, 원하는 버전을 설치하고 싶으면 '라이브러리 이름==원하는 버전' 형태로 입력한다.

ex> python -m pip install numpy → numpy 최신 버전이 설치, python -m pip install numpy==1.22.3 → numpy 1.22.3 버전 설치

- 기타 pip에서 사용 가능한 명령은 Python 관련 명령 프롬프트 명령문 참고

 

4. GPU 사용 가능한 pytorch 환경 구축

1) GPU driver 설치

- GPU 정보 확인하기: 윈도우 창에 '장치 관리자' 입력 → '디스플레이 어댑터' 클릭하면 아래 GPU 모델 정보 확인 가능

- https://www.nvidia.com/download/index.aspx 접속 후 갖고 있는 GPU 및 운영체제 정보 설정 후 search 클릭

- download로 driver 다운로드 및 설치

2) CUDA 설치

- 설치한 GPU driver 버전에 맞는 CUDA 버전 확인(구글링해서 최신 CUDA 버전의 릴리즈 노트를 확인하면 알 수 있다.)

- https://developer.nvidia.com/cuda-toolkit-archive 접속

- CUDA Toolkit x.x.x(호환되는 CUDA 버전) 클릭

- 해당 컴퓨터의 운영 체제 버전 선택 후 installer type은 exe(local) 선택

- 아래 생성된 download 클릭하여 설치 파일 다운로드

- 설치 파일 실행하여 cuda 설치

 

3) pytorch 설치

- 최신 pytorch 설치: https://pytorch.org/get-started/locally/ 접속 후 package는 pip(anaconda에 설치하는 것이면 conda 선택), language는 python, 나머지는 버전에 맞게 설정 후 아래 생성되는 Run this Command에 나오는 명령문 복사

- 이전 pytorch 설치: https://pytorch.org/get-started/previous-versions/ 접속 후 원하는 torch 버전에서 Wheel의 OSX에 해당하는 명령문 복사

- 2. 에서 활성화된 가상환경에 복사한 명령문 붙여넣기 후 실행

 

4) cudnn 설치

- https://developer.nvidia.com/rdp/cudnn-archive 접속

- CUDA 버전에 맞는 cudnn 클릭

- Local Installer for Windows(Zip) 클릭하여 다운로드

- 다운로드한 zip 파일 압축해제

- 압축 해제한 파일의 bin, include, lib 폴더를 cuda가 있는 디렉토리에 복사-붙여넣기(관리자 권한 필요)

(cuda가 있는 디렉토리: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v0.0, v0.0은 설치한 cuda 버전)

 

5) 설치 확인

- 가상환경 활성화 상태에서 'python' 명령으로 python 실행

- 아래와 같이 torch를 import하고 'torch.cuda.is_available()'을 실행했을 때 True가 나오면 성공, False가 나오면 버전이 안맞아 제대로 설치가 되지 못한 것을 의미한다.

 

 

** 현재 호환되는 pytorch, cuda, cudnn 버전 예시

python 3.9.12

pytorch 1.12.1, torchvision==0.13.1, torchaudio==0.12.1

cuda 11.3

cudnn 8.6.0

728x90