반응형

Windows에 설치된 CUDA 버전에 맞추어 PyTorch를 설치하는 방법을 다룹니다. 



2022. 5. 1  최초작성



이미 CUDA 및 conda 환경이 설치되어있다면 3번부터 진행하세요.



1. 아직 CUDA를 설치하지 않았다면 아래 문서를 참고하여 설치를 하세요.  Tensorflow를 설치하면서 작성했던 문서이지만 CUDA는 같은 방식으로 설치를 진행하면 됩니다.  13번까지 진행하세요. 

 

그래픽카드가 지원한다면 CUDA 11.3을 설치해야 최신버전 PyTorch를 사용할 수 있습니다.

설치가능한 CUDA 버전은 아래 링크를 참고하세요.

https://en.wikipedia.org/wiki/CUDA#GPUs_supported

 



Windows 10에 CUDA Toolkit 11.2 cuDNN 8.1.0 Tensorflow 설치하는 방법

https://webnautes.tistory.com/1454 



2. conda 개발 환경을 설치해줍니다. 본 문서에서는 Anaconda 대신에 Miniconda를 사용합니다. 아래 글을 참고하세요.

 

Windows 10에 Miniconda를 설치후 Visual Studio Code와 연동하기

https://webnautes.tistory.com/1667 



3. 현재 설치된 CUDA의 버전을 확인해야 합니다.  윈도우 키 + R을 누른후 cmd를 실행합니다. 

 



nvcc - V 명령을 실행하면 다음처럼 CUDA 버전을 확인할 수 있습니다.  지금 진행중인 PC의 CUDA 버전은 아래 스크린샷처럼 11.2입니다.

 



4. conda를 사용하여 PyTorch를 위한 Python 가상환경을 생성합니다.

 

테스트해본 결과 Python 3.8에서 PyTorch 설치 후 실행시 "ModuleNotFoundError: No module named 'numpy'" 에러 나서 Python 3.9를 사용후 해결되었습니다.

 

본 문서에서는 파이썬 3.9를 설치하여 진행합니다.



윈도우 환경이라면 시작메뉴에서 anaconda를 입력하여 Anaconda Prompt를 실행합니다.

 



5. 다음 명령을 사용하여 파이썬 가상환경을 생성합니다. 중간에 물어볼때 y 엔터를 누르면 설치가 진행됩니다. 

 

conda create --name python39 python=3.9




6. 다음 명령으로 생성한 가상환경을 활성화 합니다. 

 

(base) C:\WINDOWS\system32>conda activate python39

 

(python39) C:\WINDOWS\system32>



7. 우선 아래 링크를 접속하세요. 현재는 CUDA 11.3을 선택하면 아래쪽에 해당 CUDA 버전에 맞는 PyTorch를 설치하기 위한 명령어를 보여줍니다. CUDA 10.2에서는 사용할 수 없다고 나옵니다.

 

현재 설치된 CUDA가 이 버전이라면 Run this Command에 있는 명령을 사용하여 PyTorch를 설치할 수 있습니다.

 

https://pytorch.org/get-started/locally/ 

 



앞에서 CUDA 버전이 11.2 였기 때문에 여기에 해당됩니다. 이 경우 아래 링크에 접속합니다. 

https://pytorch.org/get-started/previous-versions/ 



CUDA 버전별로 사용가능한 PyTorch 설치 명령어들이 있습니다. 현재 설치된 CUDA 버전은 11.2인데 해당 버전용은 없기 때문에 11.1을 설치해야 합니다.  힌트를 드리자면 현재 설치된 CUDA 버전보다 낮은 버전용 PyTorch를 설치하면 됩니다. 

 cudatoolkit 항목에 있는 것이 CUDA 버전입니다. cudatoolkit=11.1라고 적혀있다면 CUDA 11.1을 의미합니다. 



여기에선 목록에서 찾은 다음 명령을 사용합니다.  CUDA 11.1을 위해서 PyThon 1.8이 설치됩니다. 

 

conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge

 

 

8. 다음 명령들을 사용하여 설치한 PyTorch에서 CUDA를 사용할 수 있는지 체크해봅니다.

(참고 https://chancoding.tistory.com/90 )

 

# PyTorch 모듈을 임포트합니다.

import torch

 

# 사용하가능한 그래픽카드의 이름을 출력합니다.

torch.cuda.get_device_name(0)

 

# CUDA가 사용가능하다면 True가 출력됩니다. 

torch.cuda.is_available()



실행한 결과입니다. True가 출력되지 않았다면 위 명령에서 pytorch의 버전과 cudatoolkit 버전이 호환되지 않는 것입니다. 

 

(python39) C:\Users\webnautes>python

Python 3.9.12 (main, Apr  4 2022, 05:22:27) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32

Type "help", "copyright", "credits" or "license" for more information.

>>> import torch

>>> torch.cuda.get_device_name(0)

'NVIDIA GeForce GTX 1660 Ti'

>>> torch.cuda.is_available()

True

>>> quit()

 

(python39) C:\Users\webnautes>

 

반응형

해보고 확인한 것을 문서화하여 기록합니다.


부족함이 있지만 도움이 되었으면 합니다.
잘못된 부분이나 개선점을 알려주시면 감사하겠습니다.



포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
문제가 생기면 포스트와 바뀐 환경이 있나 먼저 확인해보세요.

질문을 남겨주면 가능한 빨리 답변드립니다.


제가 쓴 책도 한번 검토해보세요 ^^

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기

댓글을 달아 주세요

">