From 08313cd4d457b2f6df17c26b67bf169ccb3f244c Mon Sep 17 00:00:00 2001 From: kaffa Date: Tue, 21 Apr 2026 12:29:11 +0900 Subject: [PATCH] infra/platform/ollama: add GPU and VRAM details MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GTX 1080 Ti(11GB VRAM, CUDA 12.4) GPU 가속 확인. gemma4:e4b 로드 시 10GB 점유(89%), 동시 로드 한계·GPU 공유 제약·36 tok/s 실측치 추가. infra-hosts.md §GPU 링크. --- infra/platform/ollama.md | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/infra/platform/ollama.md b/infra/platform/ollama.md index 1ebcd5e..48d6891 100644 --- a/infra/platform/ollama.md +++ b/infra/platform/ollama.md @@ -1,12 +1,12 @@ --- title: Ollama — LLM 로컬 추론 엔드포인트 updated: 2026-04-21 -tags: [infra, llm, ollama, inference] +tags: [infra, llm, ollama, inference, gpu] --- ## 개요 -kr1 호스트에 직접 설치된 Ollama 런타임. 컨테이너 아닌 **호스트 systemd service**. tailnet 전체에서 단일 엔드포인트로 공유. +kr1 호스트에 직접 설치된 Ollama 런타임. 컨테이너 아닌 **호스트 systemd service**. **GTX 1080 Ti GPU 가속** (CPU 추론 아님). tailnet 전체에서 단일 엔드포인트로 공유. | 항목 | 값 | |------|-----| @@ -14,6 +14,7 @@ kr1 호스트에 직접 설치된 Ollama 런타임. 컨테이너 아닌 **호스 | 서비스 | `ollama.service` (systemd, User=ollama, Restart=always) | | 버전 | 0.20.2 | | 바이너리 | `/usr/local/bin/ollama` | +| GPU | NVIDIA GeForce GTX 1080 Ti (VRAM 11GB, CUDA 12.4, 드라이버 550.163.01) — [[infra-hosts#GPU]] 참조 | | 엔드포인트 | `http://100.84.111.28:11434` (Tailscale IP, tailnet 공유) | | 바인딩 | `0.0.0.0:11434` (`OLLAMA_HOST=0.0.0.0`) | | 인증 | 없음 (tailnet 내부 전용, WAN 노출 아님) | @@ -29,6 +30,14 @@ kr1 호스트에 직접 설치된 Ollama 런타임. 컨테이너 아닌 **호스 Capability는 `/api/show` 응답의 `capabilities` 필드로 확인. +## GPU 자원 + +- gemma4:e4b (9.6 GB 모델) 로드 시 VRAM **10,062 MiB / 11,264 MiB (89%)** 점유. +- `OLLAMA_KEEP_ALIVE=-1` 때문에 한 번 로드되면 메모리 상주 — 자동 언로드 없음. +- **모델 동시 로드 한계**: gemma4:e4b 로드 상태에서 qwen3:4b를 추가 로드하려면 VRAM 부족 → 하나를 수동 언로드해야 함 (`/api/generate` 호출 시 `keep_alive: 0`). +- 현재 GPU 공유 사용 프로세스는 Ollama 단독. K3s나 Incus 컨테이너가 GPU를 쓰지 않음. +- 관측 처리 속도: gemma4:e4b tool-calling 루프에서 약 **36 tok/s** (2026-04-21 실측). + ## 접근 방법 ### 모델 목록 @@ -67,11 +76,12 @@ sudo -u ollama ollama pull ## 운영 주의점 -- kr1 호스트 자원을 LLM inference가 점유 (모델 로드 시 메모리 압박 가능). heimdall·brokkr·postgres-2·mariadb-2도 같은 호스트라는 점 유의. -- `OLLAMA_KEEP_ALIVE=-1`이라 한 번 로드된 모델은 OOM 전까지 메모리 상주. 모델 전환 시 이전 모델 수동 언로드 필요 (`/api/generate` 호출 시 `keep_alive: 0`). +- **GPU를 다른 워크로드와 공유할 수 없음**: 현재 VRAM이 거의 풀 점유 상태라 GPU를 쓰는 다른 컨테이너(예: docker-gpu Incus 이미지) 스케줄링 시 충돌 가능. 추가 GPU 워크로드는 `OLLAMA_KEEP_ALIVE=0`으로 Ollama 모델을 먼저 언로드해야 함. +- kr1 호스트 자원(CPU/RAM)도 Ollama가 일부 점유. heimdall·brokkr·postgres-2·mariadb-2가 같은 호스트라는 점 유의. +- `OLLAMA_KEEP_ALIVE=-1`이라 한 번 로드된 모델은 OOM 전까지 상주. 모델 전환 시 이전 모델 수동 언로드 필요. - 모델 저장소 `/usr/share/ollama/.ollama` 는 호스트 로컬 디스크. 백업 대상 아님 (모델은 재다운로드 가능). ## 참조 -- [[infra-hosts]] — kr1 Tailscale IP 100.84.111.28 +- [[infra-hosts]] — kr1 Tailscale IP 100.84.111.28, GTX 1080 Ti GPU 상세 (§GPU) - [[../../openclaw/openclaw-ollama|openclaw-ollama]] — OpenClaw의 Ollama 통합 (remote baseUrl 설정 패턴 재사용 가능)