Ollama 0.32.14 버전에서 sm_86 CUDA 커널이 누락되면서 RTX 30 시리즈 카드의 GPU 지원이 중단되었습니다. 이로 인해 런타임이 사용자 모르게 CPU로 폴백(fallback)되어 모델 생성 속도가 매우 느려집니다.
0.32.14 버전에서 변경된 점
새로운 바이너리는 연산 아키텍처 7.5, 8.9, 10.0, 12.0에 대해서만 빌드되었습니다. NVIDIA RTX 30 시리즈, A40, A6000의 코드명인 아키텍처 8.6이 누락되었습니다. 런처가 일치하는 커널을 찾지 못하면 ollama ps에서 GPU "split"을 보고하고, 가속 없이 실행을 진행합니다.
기존 폴백(fallback)이 더 이상 작동하지 않는 이유
이전 버전에는 기본 커널이 실패할 경우 CUDA 12 라이브러리를 로드하는 보조 경로가 포함되어 있었습니다. 해당 라이브러리에는 여전히 sm_86용 코드가 포함되어 있어 동일한 하드웨어에서 모델을 실행할 수 있었습니다. 하지만 0.32.14에서는 폴백 코드가 의도치 않게 제거되어, 런처가 GPU를 완전히 건너뛰고 호스트 프로세서(CPU)에서 실행하게 됩니다.
영향을 받는 대상
RTX 3080, 3080 Ti, 3090, 3090 Ti, A40, A6000 또는 연산 능력(compute capability) 8.6 기반의 다른 카드를 사용하는 모든 사용자가 속도 저하를 경험하게 됩니다. 이 변화는 오류 메시지나 충돌 없이 조용히 발생하므로, 눈에 띄는 처리량(throughput) 저하로만 확인할 수 있습니다.
CPU로 실행 중인지 확인하는 방법
- 모델 생성을 시작한 후, 다른 터미널에서
nvidia-smi를 실행합니다. "Memory-Used" 열이 0 MiB로 유지된다면 작업이 CPU에서 수행되고 있는 것입니다. - Ollama 로그에서
library=CUDA compute=8.6이 포함된 줄이 있는지 확인합니다. 이 줄이 없다면 폴백이 작동하지 않았음을 의미합니다. - 초당 토큰 생성 수(token-per-second)를 기존 GPU 성능 기준과 비교합니다. 이전 버전에서 몇 분 걸리던 대형 모델이 이제는 수십 분이 걸릴 수 있습니다.
CUDA_VISIBLE_DEVICES와 같은 환경 변수를 설정해도 문제가 해결되지 않습니다. 누락된 커널은 런타임 플래그가 아니라 컴파일 시점의 누락이기 때문입니다.
빠른 해결 방법: 0.32.13 버전으로 고정
Windows
- 현재 설치된 Ollama를 제거합니다.
- 프로젝트의 GitHub releases 페이지에서 0.32.13 설치 프로그램을 다운로드합니다.
- 설치 프로그램을 실행하고 Ollama 서비스를 재시작합니다.
Linux
sudo systemctl stop ollama
# replace <package> with the 0.32.13 .deb or .rpm you downloaded
sudo dpkg -i <package> # for Debian-based
# or sudo rpm -Uvh <package> # for RPM-based
sudo systemctl start ollama
다운그레이드 후 nvidia-smi 확인을 다시 수행합니다. VRAM 사용량이 0이 아닌 값으로 표시되고 생성 속도가 빨라졌는지 확인하십시오.
향후 릴리스에서 주의할 점
sm_86의 누락은 의도적인 지원 중단이라기보다 빌드 스크립트상의 실수로 보입니다. 유지 관리자가 누락된 커널을 복구하거나 CUDA 12 폴백을 다시 활성화하기 전까지는 0.32.13 이후의 모든 업그레이드에 동일한 위험이 따릅니다. 8.6 커널을 다시 추가하는 패치가 나오는지 프로젝트의 이슈 트래커를 주시하고, 업데이트 직후에는 반드시 GPU 사용 여부를 테스트하십시오.
요약: 0.32.14 버전은 의도치 않게 RTX 30 시리즈의 가속 기능을 비활성화합니다. nvidia-smi로 GPU 활동을 확인하고, 해당 카드를 사용 중이라면 누락된 커널이 복구될 때까지 0.32.13 버전으로 롤백하십시오.
