Ollama GPU 사용 안 할 때 확인하는 순서
Ollama에서 로컬 모델의 답변이 느리면 GPU 설정부터 바꾸고 싶어집니다. 하지만 먼저 모델이 어디에 올라갔는지, 컨테이너가 GPU에 접근할 수 있는지를 나눠 확인하는 편이 좋습니다. GPU 사용 여부를 읽는 명령부터 운영체제·드라이버·메모리 점검 순서까지 공식 문서를 기준으로 정리합니다.
핵심 요약
ollama ps의PROCESSOR는 모델이 올라간 메모리 위치를 보여 줍니다.- CPU와 GPU가 함께 표시되면 GPU를 전혀 사용하지 않는 경우와 구분하세요.
- 컨테이너 환경에서는 Ollama 설정 전에 GPU가 컨테이너 안에서 보이는지 확인합니다.
- 지원 목록, 실행 환경, 로그를 기록한 뒤 설정을 하나씩 바꾸는 순서를 권합니다.
먼저 모델의 메모리 배치를 확인하세요
Ollama 공식 FAQ는 메모리에 올라온 모델을 확인하는 명령으로 ollama ps를 안내합니다. 로컬 모델에 요청을 보내 모델이 로드된 상태에서 다음 명령을 실행하세요. 아래는 공식 문서의 명령과 예상 출력 예시이며, 이 글을 위해 장비에서 측정한 결과가 아닙니다.
ollama ps
NAME ID SIZE PROCESSOR UNTIL
llama3:70b bcfb190ca3a7 42 GB 100% GPU 4 minutes from now
자신의 모델명·크기·남은 시간은 달라집니다. 여기서 볼 것은 PROCESSOR 열입니다. 문서의 예시 모델을 그대로 내려받아야 하는 절차도 아닙니다.
| 표시 | 공식 설명의 의미 | 다음 확인 |
|---|---|---|
100% GPU | 모델 전체가 GPU에 배치됨 | 다른 원인을 찾기 전에 현재 조건 기록 |
100% CPU | 모델 전체가 시스템 메모리에 배치됨 | GPU 지원·감지·실행 설정 확인 |
| CPU/GPU 혼합 | 모델이 양쪽 메모리에 나뉘어 배치됨 | 모델과 컨텍스트의 메모리 요구 확인 |
이 백분율을 작업 관리자의 순간 GPU 사용률과 같은 수치로 읽지 마세요. 출력에 모델 행이 없다면 곧바로 GPU 미지원으로 결론 내리지 말고, 확인하려는 모델이 로드돼 있는지부터 살펴보세요. FAQ의 설명 대상은 현재 메모리에 올라온 모델입니다.
GPU 이름과 실행 환경을 함께 대조하기
Ollama 하드웨어 지원 문서는 NVIDIA와 AMD의 지원 조건을 구분합니다. NVIDIA는 연산 능력과 드라이버 조건을 함께 안내하고, AMD는 운영체제별 지원 목록을 따로 제공합니다. 따라서 ‘같은 제조사의 GPU’라는 정보만으로 지원 여부를 판단하면 안 됩니다.
점검 메모에는 GPU의 정확한 모델명, 운영체제, 드라이버, Ollama 버전, 직접 설치인지 컨테이너인지 적어 두세요. 그다음 자신의 환경에 해당하는 목록과 조건을 대조합니다. 이 글에서는 변동 가능한 전체 지원표를 복제하지 않고 공식 목록으로 연결합니다.
NVIDIA 환경의 CUDA_VISIBLE_DEVICES처럼 GPU 선택을 제한하는 설정도 확인 대상입니다. 공식 문서는 잘못된 장치 ID를 지정하면 CPU 사용을 강제할 수 있다고 설명합니다. 이전 설정을 복사했다면 해당 값이 지금 장치와 맞는지 점검하세요. 무조건 환경 변수를 더 추가하는 것보다, 이미 적용된 제한을 먼저 확인하는 순서를 권합니다.
Docker에서는 GPU 전달부터 확인하기
컨테이너로 실행한다면 호스트의 장치 지원과 컨테이너 내부 접근을 별도 항목으로 둡니다. NVIDIA 공식 검증 안내는 GPU 드라이버와 Container Toolkit을 설치·설정한 다음 샘플 컨테이너로 설치 상태를 확인하도록 안내합니다.
다음은 그 문서의 Docker 명령입니다. NVIDIA 드라이버와 Toolkit 구성이 끝난 환경용이며, 모든 운영체제·GPU에 공통으로 적용하는 설치 명령은 아닙니다. 실행하면 Ubuntu 이미지를 이용하는 임시 컨테이너가 생성되고, 명령 종료 후 제거됩니다. 이 동작은 Docker 실행 옵션 문서에서도 확인할 수 있습니다.
sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
예상 결과는 GPU 이름, 드라이버 버전, 메모리 사용 등의 항목이 있는 표입니다. 공식 예시의 장치명이나 버전이 자신의 출력과 일치할 필요는 없습니다. 이 확인에 실패하면 Ollama의 모델 설정을 바꾸기 전에 Toolkit과 컨테이너 런타임 구성을 점검하세요. 성공했더라도 Ollama 모델의 실제 배치 여부는 앞의 명령으로 따로 확인해야 합니다.
Ollama Docker 안내도 CPU 전용 실행과 NVIDIA GPU 실행을 구분하며, NVIDIA 예시에는 GPU 전달 옵션이 포함됩니다. AMD의 ROCm 경로는 이미지 태그와 장치 전달 방식이 다르므로 NVIDIA 명령을 그대로 복사하지 말고 해당 절을 확인하세요.
Windows와 메모리 조건에서 놓치기 쉬운 점
Docker Desktop 공식 GPU 안내에서 다루는 --gpus 기반 리눅스 컨테이너 GPU 전달은 Windows의 WSL 2 백엔드를 대상으로 합니다. NVIDIA GPU, 대응 드라이버, 최신 WSL 커널과 백엔드 활성화 조건을 함께 확인하세요. Windows에 Ollama를 직접 설치한 구성과 Docker Desktop 안에서 실행하는 구성을 같은 절차로 처리하지 않는 것이 좋습니다.
CPU/GPU 혼합 배치라면 모델 크기뿐 아니라 컨텍스트 설정도 살펴보세요. Ollama 컨텍스트 안내는 컨텍스트를 늘리면 필요한 메모리도 늘어난다고 설명합니다. GPU를 인식했는지 확인하는 문제와, 원하는 모델·컨텍스트가 메모리에 맞는지 확인하는 문제를 구분해야 합니다.
진단할 때는 모델과 컨텍스트를 동시에 여러 번 바꾸지 말고 현재 값을 먼저 기록하세요. 이후 한 조건씩 바꾸고 배치 결과를 대조하는 방식이 원인을 좁히기 쉽습니다. 특정 메모리 용량이면 모든 모델이 잘 실행된다는 보장은 이 글에서 하지 않습니다.
마지막에는 로그와 변경 기록 남기기
Ollama 문제 해결 문서는 실행 방식에 따라 로그 위치가 다르다고 안내합니다. systemd 서비스는 저널, 컨테이너는 표준 출력·오류 로그, Windows는 로컬 앱 데이터의 Ollama 로그를 확인하는 방식입니다. 본인의 실행 방식에 해당하는 경로를 찾아 GPU 감지 오류가 있는지 확인하세요.
문의나 다음 점검을 위해 아래 내용을 남기는 것을 권합니다.
- 직접 설치·WSL·컨테이너 중 어떤 환경인지 적습니다.
- GPU 모델과 드라이버, 실행 모델과 컨텍스트를 기록합니다.
- 모델 배치 출력과 컨테이너 접근 확인 결과를 구분해 적습니다.
- 문제가 시작된 시점과 직전에 바꾼 설정을 기록합니다.
컨테이너 재생성이 필요하다면 모델 저장 위치도 먼저 확인하세요. 저장소 점검은 기존 컴포즈 볼륨의 데이터 보존 확인법을 함께 참고할 수 있습니다.
정리
출발점은 느리다는 느낌보다 모델 배치 출력입니다. CPU 전용이면 지원과 감지를, 혼합 배치면 메모리 조건을 우선 살펴보세요. 컨테이너에서는 GPU 접근 확인을 한 단계 더 두고, 결과와 로그를 모은 다음 필요한 설정만 조정하는 흐름을 권합니다.
참고 자료
관련글
댓글
댓글을 불러오는 중입니다...