목적
detectron2 데이터셋 설정 작업 중 torch 관련 오류가 났다. 해당 오류를 해결하기 위한 삽질 내용과 해결 방법을 포스팅하고자 한다.
오류 내용
AssertionError: Torch not compiled with CUDA enabled
오류 발생 사유
M2 Mac에는 Nvidia GPU 기능인 Cuda가 없어서 사용할 수 없었다.
삽질
Mac의 오류인 것을 인지하지 못하고 torch 재설치를 해보기도 했다.
- torch 버전 확인
python
import torch
print(torch.__version__)
- torch & torchvision 삭제하기
pip uninstall torch torchvision
- torch, torchivision, torchaudio 호환되는 버전으로 재설치
conda install pytorch==2.2.1 torchvision==0.17.1 torchaudio==2.2.1 -c pytorch
하지만 오류 발생은 똑같았다.
오류 해결
- detectron2 설정을 mps로 변경 후 작업하면 해결된다.
- mps: pytorch는 Numpy같은 행렬 연산을 GPU를 활용하여 연산 속도를 빠르게 할 수 있다. 하지만 M1/M2 에서 Nvidia cuda 대신 mps 장치를 사용할 수 있다.
cfg.MODEL.DEVICE = 'mps'
마무리
해결이 된 것에 대한 기쁨이 있지만 허무하다.
mac 은 nvidia를 지원하지 않는 문제와 딥러닝 또는 머신러닝의 작업에 제약되는 사항이 많은 것 같다.
그럼에도 불구하고 나는 해결했다!
'ML & DL > [CV] 나는 솔로 - 사이드프로젝트' 카테고리의 다른 글
[Mac] Detectron2 예제 실습하기 - Face detection (0) | 2024.04.22 |
---|---|
Dataturks AccessDenied (0) | 2024.04.09 |
댓글