AssertionError: Torch not compiled with CUDA enabled
에러 해결 방법
pip show torch 명령어를 입력합니다.
(스테이블디퓨전 forge 이용자는 "forge설치 폴더\system\python\Scripts" 폴더에서 cmd 실행 후 앞으로 나올 모든 명령어 앞에 "..\python -m "를 붙이면 됩니다. 예) ..\python -m pip show torch)
만약 위 화면처럼 +cu 표시 없이 버전 숫자만 표시된다면 해당 torch는 CUDA버전이 아닌 CPU버전입니다.
CPU버전이 아닌 CUDA버전이 설치되어 있어야 에러가 발생하지 않습니다.
그러므로 이 에러는 CPU버전의 torch를 삭제하고 CUDA버전을 새로 설치하면 해결이 됩니다.
그러나 CUDA버전의 torch를 설치하려면 그래픽 카드가 CUDA를 지원해야 합니다.
본인 그래픽 카드가 CUDA를 지원하는지 먼저 체크하고 CUDA를 지원한다면 기존 CPU torch는 삭제하고 CUDA torch를 새로 설치하면 됩니다.
그래픽 카드 CUDA 지원 여부 확인
본인 그래픽 카드의 CUDA 지원 여부는 다음 링크된 글을 참고하면 알 수 있습니다.
https://zeliard.tistory.com/entry/how-check-geforce-graphic-card-supports-cuda
CPU 버전의 torch 삭제
본인 그래픽 카드가 CUDA를 지원한다면 다음 절차를 수행하면 됩니다.
pip uninstall torch 명령어를 실행하여 torch를 삭제합니다.
Proceed (Y/n)? 에서 y를 입력합니다.
torch CUDA 버전 설치
설치를 원하는 CUDA 버전을 하나 선택하여 명령어를 입력합니다.
위 화면 예시는 CUDA 버전 11.8을 설치한 예시입니다.
(CUDA 버전 12.1을 설치하려면 아래 버전 12.1 명령어를 입력하면 됩니다)
이 글을 작성하는 날짜 기준(24년 5월) 최신 버전은 12.1이며 현재 최신 버전을 알아보려면 pytorch.org 사이트에 접속해서 알아보면 됩니다.
CUDA 버전 11.8
pip install torch --index-url https://download.pytorch.org/whl/cu118
CUDA 버전 12.1
pip install torch --index-url https://download.pytorch.org/whl/cu121
설치 완료 후 pip show torch 명령어를 입력하여 torch 버전 끝에 +cu가 붙는지 확인합니다.
위 예시처럼 torch 버전 끝에 +cu가 붙는다면 CUDA 버전의 torch가 제대로 설치된 것이며 더 이상 CUDA 에러가 발생하지 않을 것입니다.
댓글