toolkitbox

~/ / AI 기사 / VPS에서 로컬 LLM / 작은 VPS에서 Ollama의 메모리 사용량 살펴보기

작은 VPS에서 Ollama의 메모리 사용량 살펴보기

작은 서버에서는 메모리가 곧 한계이고, Ollama는 답변을 마친 뒤에도 모델을 메모리에 남겨 둡니다. 이 글에서는 무엇이 로드되어 있는지, 얼마나 오래 남아 있는지, Ollama가 동시에 몇 개의 모델과 요청을 처리하는지, 그리고 어떤 설정이 메모리 사용량을 바꾸는지 확인하는 방법을 설명합니다. 아래의 모든 기본값은 공식 FAQ에서 인용한 것입니다.

게시: · 읽는 데 약 4분 · 2026-10-27에 공식 Ollama 문서와 대조해 확인한 내용입니다. 기본값은 버전에 따라 바뀔 수 있으므로, 사용 중인 버전의 FAQ를 확인하세요.

로드된 모델 확인하기

FAQ에 따르면 ollama ps를 사용하면 현재 메모리에 로드된 모델을 볼 수 있습니다. PROCESSOR 열은 모델이 어디에 올라가 있는지를 알려 줍니다.

PROCESSOR 표시FAQ가 설명하는 의미
100% GPU모델이 전부 GPU에 로드되었습니다.
100% CPU모델이 전부 시스템 메모리에 로드되었습니다.
48%/52% CPU/GPU모델이 일부는 GPU에, 일부는 시스템 메모리에 나뉘어 로드되었습니다.

GPU가 없는 VPS에서는 100% CPU가 정상적인 표시입니다. 모델이 서버의 메모리에 올라가 있다는 뜻입니다.

모델이 메모리에 남아 있는 시간

FAQ에 따르면 기본적으로 모델은 5분 동안 메모리에 유지된 뒤 언로드됩니다. 이 시간은 서버 전체에 대해서도, 요청 하나에 대해서도 바꿀 수 있습니다.

하고 싶은 일FAQ에 따른 방법
모델을 지금 언로드하기ollama stop llama3.2
모델을 계속 로드해 두기/api/generate 또는 /api/chat 요청에 keep_alive를 음수(예: -1)로 보냅니다.
답변 직후에 언로드하기keep_alive를 0으로 보냅니다.
다른 시간으로 지정하기keep_alive에는 10m이나 24h 같은 기간 문자열, 또는 3600 같은 초 단위 숫자도 쓸 수 있습니다.
서버 전체에 설정하기서버를 시작할 때 OLLAMA_KEEP_ALIVE 환경 변수를 설정합니다. 같은 종류의 값을 받습니다. 요청에 포함된 keep_alive가 이 설정보다 우선합니다.

문서에 적힌 내용이 아니라 우리의 해석입니다. 같은 서버에서 Dify나 채팅 화면 같은 다른 것도 함께 돌린다면, 로드된 채로 남아 있는 모델이 그들이 쓸 메모리를 차지합니다. 시간을 짧게 하면 메모리가 더 빨리 풀리지만, 다음 요청 때 모델을 다시 로드해야 합니다. 그 로드에 시간이 얼마나 걸리는지는 측정하지 않았습니다.

여러 모델, 여러 요청

FAQ는 세 가지 제한값과 한 가지 규칙을 설명합니다. 다른 모델이 로드된 상태에서 새 모델이 남은 메모리에 들어가지 않으면, 새 요청은 모델을 로드할 수 있을 때까지 대기열에 쌓이고, 사용 중이 아닌 모델은 자리를 만들기 위해 언로드됩니다.

아래 추정 도구에는 병렬 요청 수를 입력하는 칸이 있어서, 값을 높였을 때 합계가 어떻게 달라지는지 볼 수 있습니다.

설정FAQ의 설명
OLLAMA_MAX_LOADED_MODELS사용 가능한 메모리에 들어간다는 조건에서 동시에 로드할 수 있는 모델의 최대 개수입니다. 기본값은 GPU 수의 3배이며, CPU 추론에서는 3입니다.
OLLAMA_NUM_PARALLEL각 모델이 동시에 처리하는 병렬 요청의 최대 개수입니다. 기본값은 1입니다. 필요한 RAM은 OLLAMA_NUM_PARALLEL에 OLLAMA_CONTEXT_LENGTH를 곱한 값에 비례해 늘어납니다.
OLLAMA_MAX_QUEUEOllama가 바쁠 때 더 이상 받지 않고 거부하기 전까지 대기열에 쌓아 두는 요청의 최대 개수입니다. 기본값은 512입니다. 거부된 요청은 503 오류를 받습니다.

직접 해 보기: Local LLM Memory Estimator

모델

Ollama 태그 qwen3:8b, 양자화 Q4_K_M, 다운로드 크기 5.2 GB.

추정값

모델 가중치
4.84 GiB
KV 캐시
0.56 GiB
예비분
1.00 GiB
합계
6.41 GiB (6.88 GB)
담을 수 있는 가장 작은 일반 메모리 크기
8 GiB

이 값은 추정입니다. 런타임의 연산 버퍼는 포함하지 않으며, 모든 레이어의 KV 구조가 같다고 가정합니다. 플랜을 정하기 전에 실제로 실행해 측정하세요.

모델 데이터 확인일: 2026-10-26.

출처: Ollama library · 모델 구성 파일 (config.json) · Ollama FAQ

모든 처리는 브라우저 안에서 이루어지며 아무것도 업로드되지 않습니다.

메모리 사용량을 바꾸는 설정

설정FAQ의 설명
OLLAMA_CONTEXT_LENGTH기본적으로 Ollama는 4096 tokens의 컨텍스트 창을 사용합니다. 이 환경 변수로 값을 덮어쓸 수 있고, num_ctx는 세션별로 또는 API를 통해 설정할 수 있습니다.
OLLAMA_KV_CACHE_TYPEK/V 캐시의 양자화 유형입니다. 기본값은 f16입니다.
OLLAMA_FLASH_ATTENTION서버를 시작할 때 1로 설정하면 Flash Attention을 강제로 켭니다. FAQ에 따르면 백엔드와 장치가 지원하는 경우 Ollama가 자동으로 켭니다.

서버의 환경 변수는 systemd override에 넣습니다. VPS에 Ollama를 설치하는 글에서 그 순서를 보여 줍니다. 각 설정이 사용 중인 서버에서 메모리를 얼마나 줄여 주는지는 측정하지 않았으므로, 설정을 바꾼 뒤에는 ollama ps로 확인하세요.

출처

다음에 읽기