Ollama GPU 가속 설정: CUDA, ROCm, Metal 전 플랫폼 실전 가이드

터미널에 글자가 한 줄씩 천천히 올라오고, 시간을 보니 47초가 지나 있었습니다. 오래된 노트북에서 Llama 3 8B를 CPU로 돌렸을 때의 속도입니다. CPU는 꽉 차고, 팬은 계속 돌고, 초당 대략 5 token 정도 나왔습니다. 솔직히 꽤 지치는 경험이었습니다. 원래는 코드 작업을 조금 도와 달라고 쓰려던 건데, 답을 기다리는 시간에 직접 Google에서 찾아보는 편이 더 빨랐습니다.
나중에 같은 GPU를 데스크톱에 옮기고 CUDA 드라이버를 설치한 뒤, 같은 모델과 같은 파라미터로 다시 실행했습니다. 이번에는 3초였습니다.
과장이 아닙니다. 거의 1분 가까이 걸리던 작업이 몇 초로 줄었습니다. 질문을 던진 직후 바로 답을 보고 싶은 그 느낌이 다시 돌아왔습니다.
이 글은 Ollama의 GPU 가속 설정을 제대로 끝내는 데 초점을 맞춥니다. NVIDIA, AMD, Apple Silicon 중 어떤 환경이든 설정 방법, 검증 방법, 문제가 생겼을 때 빠져나오는 방법을 차례대로 정리합니다. 기다리는 시간을 줄이고, 더 흥미로운 일에 시간을 쓰면 됩니다.
GPU 가속은 얼마나 체감될까: 30초에서 3초로 줄어드는 차이
먼저 결론부터 말하면, GPU로 로컬 대규모 언어 모델을 실행하면 속도가 10-20배까지 빨라질 수 있습니다. 광고 문구가 아니라 직접 테스트한 결과이기도 하고, 커뮤니티에서 반복적으로 확인된 체감이기도 합니다.
아마 이런 질문이 나올 수 있습니다. CPU로도 실행은 되는데 굳이 GPU까지 설정해야 할까요?
실행은 됩니다. 하지만 경험은 완전히 다릅니다. CPU로 7B 파라미터 모델을 돌리면 초당 보통 3-8 token 정도가 나오고, 500자 안팎의 답변 하나를 받는 데 20-60초를 기다려야 합니다. GPU로 바꾸면 같은 모델이 초당 40-80 token까지 올라가고, 몇 초 안에 답변이 나옵니다. 이 차이는 “조금 더 빠르다”가 아니라 “겨우 쓸 수 있다”에서 “실제로 쓰기 좋다”로 바뀌는 수준입니다.
내 GPU는 지원될까?
Ollama는 세 가지 GPU 플랫폼을 지원하며, 각각 요구 조건이 다릅니다.
NVIDIA GPU: 가장 대중적이고 설정도 가장 편합니다. 공식 요구 사항은 Compute Capability 5.0 이상입니다. 대략 GTX 900 시리즈 이후의 카드라고 보면 됩니다. GTX 1060, RTX 3060, RTX 4090 같은 카드는 모두 문제가 없습니다. 제가 가진 RTX 3060 12GB로는 14B 이하 모델을 꽤 여유 있게 돌릴 수 있습니다.
AMD GPU: 설정은 조금 더 번거롭지만 충분히 사용할 수 있습니다. Linux에서는 ROCm v7이 필요하고, Windows에서는 현재 ROCm v6.1 Preview만 제공됩니다. 지원되는 GPU 모델에도 조건이 있습니다. RX 6000과 RX 7000 시리즈는 비교적 안정적이고, 오래된 카드는 추가 설정이 필요할 수 있습니다.
Apple Silicon: M1/M2/M3/M4 전 제품군을 지원하며 자동으로 활성화됩니다. Mac 사용자는 대부분 별도 설정 없이 Ollama를 설치하면 Metal 가속을 바로 사용할 수 있습니다. 2026년 이후에는 MLX 백엔드 선택지도 추가되어 성능이 한 번 더 올라갔습니다.
VRAM은 충분할까?
많은 사람이 놓치는 부분이 바로 VRAM입니다. GPU로 모델을 실행할 때 VRAM은 사실상 하드 제한입니다.
대략 계산해 보면, 4-bit 양자화된 7B 모델은 5-6GB VRAM이 필요하고, 14B는 10-12GB, 70B는 40GB 이상이 필요합니다. GPU의 VRAM 용량이 실행 가능한 모델 크기를 직접 결정합니다. 제 RTX 3060 12GB에서는 Llama 3 8B가 매우 편하게 돌아가지만, Mixtral 8x7B를 실행하면 빠듯해서 일부 메모리를 CPU 쪽에 기대야 합니다.
그래서 GPU 설정을 시작하기 전에 먼저 자신의 GPU 모델과 VRAM 용량을 확인해 두는 것이 좋습니다.
NVIDIA CUDA: 가장 수월한 선택지지만 몇 가지 함정은 있다
NVIDIA GPU를 사용한다면 다행입니다. 세 플랫폼 중 설정 과정이 가장 간단할 가능성이 높습니다.
드라이버가 설치되어 있는지 먼저 확인하기
터미널을 열고 다음을 입력합니다.
nvidia-smi
GPU 모델, VRAM 용량, 드라이버 버전이 포함된 표가 보인다면 드라이버는 이미 설치된 상태입니다. Ollama는 CUDA를 자동으로 감지해 사용합니다. 별도로 CUDA Toolkit을 설치할 필요도 없습니다. 맞습니다. Ollama에는 필요한 CUDA 라이브러리가 포함되어 있어 한 단계를 줄일 수 있습니다.
명령을 찾을 수 없다는 오류가 나온다면 드라이버부터 설치해야 합니다. Ubuntu 사용자는 다음 명령을 실행할 수 있습니다.
sudo apt install nvidia-driver-535 # 또는 더 새로운 버전
설치 후 재부팅하고, 다시 nvidia-smi로 확인합니다.
GPU가 여러 장이면 어떻게 할까?
모델 전체가 GPU 한 장의 사용 가능한 VRAM에 들어가면 Ollama는 PCI 버스 전송을 줄이기 위해 해당 GPU에만 모델을 로드합니다. 한 장에 들어가지 않을 때만 사용 가능한 여러 GPU에 자동으로 분산합니다. 특정 GPU만 선택하고 다른 GPU를 별도 작업용으로 남겨 둘 수도 있습니다.
이럴 때는 환경 변수를 설정합니다.
# 0번 GPU만 사용
export CUDA_VISIBLE_DEVICES=0
# 0번과 2번 GPU 사용
export CUDA_VISIBLE_DEVICES=0,2
이 줄을 ~/.bashrc나 systemd 서비스 설정에 추가하면 영구적으로 적용할 수 있습니다.
Docker에서 Ollama를 실행한다면?
모든 서비스를 컨테이너에 넣어 관리하는 분도 있습니다. Ollama도 가능합니다. 다만 Docker 컨테이너는 기본적으로 호스트 GPU에 접근할 수 없으므로 추가 설정이 필요합니다.
NVIDIA 공식 nvidia-container-toolkit을 사용합니다.
# toolkit 설치
sudo apt install nvidia-container-toolkit
# Docker runtime 설정
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
그다음 Ollama 컨테이너를 시작할 때 --gpus all 인자를 붙입니다.
docker run -d --gpus all -v ollama:/root/.ollama -p 11434:11434 ollama/ollama
GPU가 실제로 사용되는지 확인하는 방법
간단한 검증 방법이 있습니다. 모델을 실행하는 동안 다른 터미널을 열고 다음을 실행합니다.
ollama ps
출력에는 현재 실행 중인 모델과 GPU 사용 상태가 표시됩니다. GPU: 100%와 비슷한 표시가 보이면 가속이 적용된 것입니다.
또는 nvidia-smi -l 1로 VRAM 사용량을 실시간 모니터링할 수도 있습니다. 모델을 실행할 때 VRAM 사용량이 눈에 띄게 증가해야 합니다.
AMD ROCm: 설정은 조금 번거롭지만 실행되면 충분히 빠르다
AMD 사용자의 답답함은 이해합니다. 온라인 튜토리얼은 대부분 NVIDIA 중심이고, AMD 문서는 흩어져 있는 경우가 많습니다. 그래도 좋은 소식은 Ollama의 ROCm 지원이 꽤 안정화되었다는 점입니다. 단지 설정 단계가 몇 개 더 있을 뿐입니다.
Linux 사용자의 정석: ROCm v7
Ubuntu 22.04 이상 배포판을 사용한다면 ROCm 설치가 아주 어렵지는 않습니다.
# AMD 공식 저장소 추가
sudo apt update
sudo apt install amdgpu-install
sudo amdgpu-install --usecase=rocm
# 현재 사용자를 render/video 그룹에 추가
sudo usermod -aG render,video $USER
# 재부팅해 적용
sudo reboot
재부팅 후 rocminfo 명령으로 GPU가 인식되는지 확인합니다. GPU 정보가 보이면 Ollama를 설치하면 됩니다. AMD용 Ollama는 ROCm 환경을 자동으로 감지하므로 별도 설정이 필요 없습니다.
Windows 사용자: 아직은 Preview에 가깝다
솔직히 말하면 Windows에서 ROCm 지원은 아직 아주 성숙한 편은 아닙니다. 공식적으로 ROCm v6.1 Preview가 제공되지만, 지원 GPU 모델이 제한적이고 안정성도 Linux보다 떨어집니다. Windows에서 주로 작업하고 AMD GPU를 쓰고 있다면 제 추천은 이렇습니다.
WSL2 + Ubuntu를 우선 고려하세요. Linux 하위 시스템 안에서 Ollama를 실행하는 방식입니다. 성능과 안정성 모두 네이티브 Windows보다 한 단계 낫습니다.
오래된 GPU는 어떻게 할까? HSA_OVERRIDE가 도와줄 수 있다
AMD GPU 아키텍처 코드명은 조금 복잡합니다. ROCm은 공식적으로 비교적 새로운 아키텍처(gfx900, gfx1030 등)를 지원합니다. RX 580(gfx803)처럼 오래된 GPU는 ROCm이 기본적으로 인식하지 않을 수 있습니다.
이럴 때는 환경 변수로 강제 오버라이드할 수 있습니다.
export HSA_OVERRIDE_GFX_VERSION=10.3.0 # gfx1030 호환 모드 강제 사용
모든 경우에 통하는 방법은 아니지만, 커뮤니티에서는 여러 오래된 카드에서 효과가 있었다는 피드백이 있습니다. 한 번 시도해 볼 만합니다. 그래도 안 된다면 CPU 실행으로 돌아가야 합니다.
멀티 GPU 설정
NVIDIA와 비슷하게 AMD도 사용할 GPU를 지정할 수 있습니다.
export ROCR_VISIBLE_DEVICES=0,1 # 0번과 1번 GPU 사용
GPU 번호는 rocm-smi 명령으로 확인할 수 있습니다.
자주 보는 AMD GPU 아키텍처 코드명
문제 해결에 도움이 되도록 대표 모델과 아키텍처를 정리하면 다음과 같습니다.
| GPU 모델 | 아키텍처 코드명 | ROCm 지원 |
|---|---|---|
| RX 7900 XTX | gfx1100 | 네이티브 지원 |
| RX 6800 XT | gfx1030 | 네이티브 지원 |
| RX 5700 XT | gfx1010 | 네이티브 지원 |
| RX 580 | gfx803 | HSA_OVERRIDE 필요 |
| Vega 56/64 | gfx900 | 네이티브 지원 |
정리하면 AMD 설정은 NVIDIA보다 몇 군데 더 걸릴 수 있습니다. 하지만 한 번 성공하면 성능 차이는 크지 않습니다.
Apple Metal: Mac 사용자를 위한 숨은 장점
Apple Silicon Mac(M1/M2/M3/M4)을 사용한다면 좋은 소식이 있습니다. 아무것도 설정하지 않아도 됩니다.
정말입니다. 별도 설정이 없습니다. Ollama를 설치하고 모델을 실행하면 GPU 가속이 자동으로 활성화됩니다. Apple의 Metal 프레임워크는 Ollama에 이미 내장되어 있고, 시스템이 모델을 GPU에 자동으로 로드합니다.
M 시리즈 칩의 성능
커뮤니티 테스트 기준으로 Mac의 로컬 LLM 성능은 꽤 괜찮은 편입니다.
- M1/M2 8GB: 7B 모델 실행 시 약 15-20 tok/s
- M2 Pro 16GB: 14B 모델 실행 시 약 25-30 tok/s
- M3 Max 36GB: 30B 이상 모델도 30+ tok/s 수준 유지
CPU-only 오래된 머신과 비교하면 이미 충분히 실용적인 속도입니다. RTX 4090 같은 즉답 수준에는 미치지 못하지만, 일상적인 코드 보조, 번역, 문장 다듬기에는 충분합니다.
2026년의 새 선택지: MLX 백엔드
M 시리즈 칩을 쓰고 있고 통합 메모리가 32GB 이상이라면, 예를 들어 M3 Max나 M4 Pro라면 MLX 백엔드도 사용할 수 있습니다. MLX는 Apple이 자사 칩에 맞춰 최적화한 머신러닝 프레임워크입니다.
개발자 커뮤니티 데이터에 따르면 MLX 백엔드는 추론 속도를 93% 높일 수 있습니다. 예를 들어 기존에 Llama 3 8B가 초당 57.8 token으로 실행됐다면, MLX에서는 111.4 tok/s까지 올라갈 수 있습니다. 체감상 “꽤 부드럽다”에서 “정말 빠르다”로 넘어가는 차이입니다.
활성화 방법도 어렵지 않습니다. 인자를 하나 추가하면 됩니다.
ollama run llama3 --backend mlx
다만 MLX는 현재 메모리 요구량이 높은 편입니다. 32GB 미만에서는 안정적이지 않을 수 있습니다. 또한 일부 모델만 MLX를 지원하며, 주로 mlx 형식으로 배포된 모델이 대상입니다.
GPU가 일하고 있는지 확인하는 방법
Activity Monitor(활동 모니터)를 열고 GPU History 탭으로 전환합니다. 모델을 실행할 때 GPU 사용률이 뚜렷하게 올라가야 합니다. 실행 내내 CPU만 움직이고 GPU가 전혀 반응하지 않는다면 Metal이 활성화되지 않았을 가능성이 있습니다. 이런 경우는 드물지만, 보통 Ollama를 다시 설치하면 해결됩니다.
GPU 감지에 실패했다면: 자주 만나는 문제 해결
하드웨어 설정을 만지다 보면 문제를 만나는 것은 거의 자연스러운 과정입니다. 제가 겪었거나 자주 보이는 문제와 해결 방법을 정리했습니다.
문제 1: no compatible GPUs were discovered
가장 흔한 오류입니다. Ollama가 사용할 수 있는 GPU를 찾지 못했다는 뜻입니다.
가능한 원인:
- 드라이버가 설치되지 않았거나 버전이 너무 오래됨
- GPU 모델이 지원되지 않음, 예를 들어 GTX 700 시리즈 같은 오래된 카드
- Docker 컨테이너에 GPU 접근 권한이 설정되지 않음
확인 순서:
# NVIDIA: 드라이버 확인
nvidia-smi
# AMD: ROCm 확인
rocminfo
# 명령이 오류를 내면 먼저 드라이버를 설치
문제 2: Not compiled with GPU offload support
이 오류는 다운로드한 Ollama 버전에 GPU 지원이 포함되어 있지 않다는 뜻입니다.
해결 방법: 공식 사이트에서 올바른 버전을 다시 다운로드합니다. AMD 사용자는 Ollama에 ROCm 전용 버전이 있다는 점을 특히 주의해야 합니다. 다운로드 링크가 CUDA 버전과 다르므로 잘못 받지 않도록 확인하세요.
문제 3: NVIDIA 드라이버 버전이 너무 낮음
Ollama는 NVIDIA 드라이버 450 이상을 요구합니다. 시스템이 아직 400대 구버전 드라이버를 사용하고 있다면 CUDA가 동작하지 않습니다.
# 현재 드라이버 버전 확인
nvidia-smi | grep "Driver Version"
# 버전이 너무 낮으면 드라이버 업데이트
sudo apt install nvidia-driver-535
문제 4: AMD amdgpu 드라이버 누락
Linux에서 AMD GPU가 정상 동작하려면 amdgpu 드라이버가 필요합니다. 일부 시스템은 기본으로 오래된 radeon 드라이버가 설치되어 있을 수 있고, 이 경우 ROCm을 지원하지 않습니다.
# 현재 로드된 드라이버 확인
lsmod | grep amdgpu
# 출력이 없다면 수동 설치 필요
sudo apt install amdgpu-dkms
문제 5: SELinux가 컨테이너의 GPU 접근을 거부함
이 문제는 CentOS/RHEL 계열 시스템에서 만난 적이 있습니다. SELinux 기본 정책이 컨테이너의 GPU 장치 접근을 막을 수 있습니다.
임시 해결:
sudo setenforce 0 # SELinux 임시 비활성화
영구 해결은 SELinux 정책 조정이 필요해 조금 복잡합니다. Red Hat 공식 문서를 참고하는 것이 좋습니다. 또는 Ubuntu로 옮기면 훨씬 단순해집니다.
검증 명령 모음
마지막으로 빠르게 확인할 수 있는 명령 목록을 정리합니다. 문제가 생기면 이 순서대로 점검하세요.
# 1. GPU가 시스템에 인식되는지 확인
nvidia-smi # NVIDIA
rocminfo # AMD
system_profiler SPDisplaysDataType # macOS
# 2. Ollama 프로세스 상태 확인
ollama ps
# 3. GPU 사용률 실시간 모니터링(모델 실행 중)
watch -n 1 nvidia-smi # NVIDIA
rocm-smi -a # AMD
# 4. 환경 변수 확인
echo $CUDA_VISIBLE_DEVICES
echo $ROCR_VISIBLE_DEVICES
대부분의 문제는 이 몇 가지 명령으로 위치를 좁힐 수 있습니다. 그래도 해결되지 않으면 Ollama의 GitHub Issues에서 검색해 보세요. 비슷한 문제를 겪은 사람이 꽤 많습니다.
마무리
지금까지의 내용을 빠르게 비교하면 다음과 같습니다.
| 플랫폼 | 전제 조건 | 설정 난이도 | 추천도 |
|---|---|---|---|
| NVIDIA | 드라이버 450+ | 쉬움(거의 무설정) | 1순위 |
| AMD (Linux) | ROCm v7 | 보통(몇 단계 명령 필요) | 2순위 |
| AMD (Windows) | ROCm v6.1 Preview | 어려움(WSL2 권장) | 보통 |
| Apple Silicon | 별도 설정 없음 | 가장 쉬움 | Mac 사용자 1순위 |
GPU 가속은 한 번 설정해 두면 오래 이득을 보는 작업입니다. CPU의 “실행은 된다”에서 GPU의 “쓸 만하다”로 넘어가면 체감 차이가 정말 큽니다. 사용 중인 GPU는 어느 플랫폼인가요? 설정 중 어떤 문제를 만났나요? 댓글에 남겨 주시면 확인하는 대로 답해 보겠습니다.
Ollama GPU 가속 설정
세 플랫폼에서 GPU 가속을 설정하는 전체 절차
⏱️ Estimated time: 30 min
- 1
Step 1: GPU 모델과 드라이버 확인
사용 중인 GPU 유형에 맞는 검증 방법을 선택합니다:
- NVIDIA: nvidia-smi를 실행해 GPU 정보를 확인합니다
- AMD: rocminfo를 실행해 ROCm이 GPU를 인식하는지 확인합니다
- macOS: 별도 검증이 필요 없으며 Metal이 자동 활성화됩니다 - 2
Step 2: NVIDIA CUDA 설정
가장 간단한 방식입니다. 드라이버만 설치하면 됩니다:
1. 드라이버 설치: sudo apt install nvidia-driver-535
2. 시스템 재부팅
3. 검증: nvidia-smi가 GPU 정보를 표시해야 합니다
4. Ollama가 CUDA를 자동 감지하므로 추가 설정은 필요 없습니다 - 3
Step 3: AMD ROCm 설정(Linux)
ROCm v7 설치가 필요합니다:
1. 설치: sudo apt install amdgpu-install
2. 설정: sudo amdgpu-install --usecase=rocm
3. 권한: sudo usermod -aG render,video $USER
4. 재부팅 후 검증: rocminfo
5. 오래된 GPU는 필요할 수 있습니다: export HSA_OVERRIDE_GFX_VERSION=10.3.0 - 4
Step 4: GPU 가속 적용 여부 검증
모델 실행 중 GPU가 실제로 동작하는지 확인합니다:
- ollama ps를 실행해 GPU 사용률을 확인합니다
- NVIDIA: nvidia-smi -l 1로 실시간 모니터링
- AMD: rocm-smi -a로 실시간 모니터링
- macOS: Activity Monitor에서 GPU History 확인 - 5
Step 5: 멀티 GPU 환경 설정
사용할 GPU를 지정합니다:
- NVIDIA: export CUDA_VISIBLE_DEVICES=0,2
- AMD: export ROCR_VISIBLE_DEVICES=0,1
- 환경 변수를 ~/.bashrc에 추가해 영구 적용합니다
FAQ
Ollama는 어떤 GPU 플랫폼을 지원하나요?
GPU VRAM이 부족하면 어떻게 해야 하나요?
GPU 가속이 실제로 적용됐는지 어떻게 확인하나요?
RX 580 같은 오래된 AMD GPU도 사용할 수 있나요?
Docker 컨테이너에서 GPU를 어떻게 사용하나요?
Apple Silicon의 MLX 백엔드는 어떻게 활성화하나요?
'no compatible GPUs were discovered' 오류가 나면 어떻게 하나요?
3분 읽기 · 게시일: 2026년 4월 25일 · 수정일: 2026년 10월 21일
Ollama 로컬 LLM 가이드
검색으로 들어왔다면 같은 시리즈의 이전 글이나 다음 글로 이동하는 것이 가장 빠릅니다.
이전
Ollama 하드웨어 선택표: VRAM, 양자화, GPU 대조 가이드(2026)
완전한 Ollama 하드웨어 선택 대조표입니다. 7B/13B/70B 모델의 VRAM 요구량, Q4/Q8 양자화 비교, NVIDIA CUDA/AMD ROCm/Apple Metal 3대 가속 기술을 정리했습니다. RTX 3060부터 5090까지 단계별 추천으로 GPU와 모델을 빠르게 맞춰 보세요.
18편 중 6편
다음
Ollama GPU 스케줄링과 리소스 관리: VRAM 최적화와 멀티 GPU 부하 분산
Ollama의 VRAM 최적화 매개변수, llama.cpp GPU offloading 원리, 멀티 GPU 인스턴스와 Nginx 부하 분산 구성을 실제 사례로 설명합니다.
18편 중 8편



댓글
GitHub로 로그인하여 댓글을 남기세요