로컬 LLM 사양: RAM 8GB·16GB면 몇 B까지? Ollama 3B·7B·14B 실측

Read in English

로컬 LLM 사양, 특히 Ollama 최소 사양에서 가장 먼저 걸리는 건 RAM이다. 내 노트북 RAM이 8GB, 16GB라면 어느 크기 모델까지 될까. 감으로 답하지 않고 직접 쟀다. Ollama로 Qwen2.5 3B·7B·14B를 RAM 상한 4GB·8GB·16GB에서 각각 세 번씩, 모두 27번 돌렸다. GPU 없이 CPU만 쓴 결과다.

결론부터

  • 4GB: 3B만 돈다. 7B·14B는 모델을 올리다가 메모리 부족으로 프로세스가 죽었다.
  • 8GB: 3B와 7B가 돈다. 7B는 최대 6.2GiB까지 올라갔다. 14B는 죽었다.
  • 16GB: 14B까지 돈다. 다만 최대 13.6GiB를 써서 16GB 상한에 거의 붙는다.
  • OS·브라우저 몫(3~4GB)을 빼고 보면 8GB 노트북은 3B, 16GB는 7B까지 여유 있게, 14B를 쓰려면 32GB가 맞다.

측정 조건

4 vCPU·16GB 리눅스 서버(AWS Lightsail)에서 Ollama 컨테이너마다 메모리 상한을 걸고 스왑은 껐다(--memory-swap을 --memory와 같게). 그래서 “성공”은 RAM 안에서 끝났다는 뜻이다. Ollama 0.40.4(이미지 다이제스트 926d40fd6eee…), 모델은 Ollama 기본 양자화 그대로(qwen2.5:3b 1.9GB, 7b 4.7GB, 14b 9.0GB), 컨텍스트는 기본값 4096이다. 같은 영어 질문에 최대 128토큰을 생성하게 했다(온도 0). 최대 메모리는 컨테이너 cgroup의 memory.peak로 읽었다. 이 버전의 Ollama는 CPU에서 모델 파일을 mmap하지 않고 메모리에 올리므로(로그 “disabling mmap”), 이 값은 실제로 차지한 RAM에 가깝다.

모델 (파일 크기) RAM 4GiB RAM 8GiB RAM 16GiB
Qwen2.5 3B (1.9GB) 성공 3/3, 최대 3.6GiB 성공 3/3, 최대 3.1GiB 성공 3/3, 최대 3.8GiB
Qwen2.5 7B (4.7GB) 실패 0/3 (메모리 부족으로 종료) 성공 3/3, 최대 6.2GiB 성공 3/3, 최대 6.3GiB
Qwen2.5 14B (9.0GB) 실패 0/3 실패 0/3 성공 3/3, 최대 13.6GiB

실패한 경우는 모두 Ollama가 llama-server process has terminated: signal: killed를 돌려줬고, cgroup의 OOM 종료 횟수가 매번 1씩 늘었다.

속도: CPU만으로는 얼마나 느린가

모델 초당 토큰 (세 번 범위) 첫 로딩
3B 5.1~5.7 11~16초
7B 2.5~2.6 17초
14B 1.3 62초

RAM 상한이 바뀌어도 같은 모델의 속도는 거의 같았다. 메모리는 “돌아가느냐”를 정하고, 속도는 CPU가 정한다. 14B는 초당 1.3토큰이라 100단어 답 하나에 1~2분이 걸린다. 대화용으로 쓰기엔 느리다.

숫자를 읽을 때 주의할 점

  • 서버 CPU는 버스트형이다. CPU 크레딧을 쓰는 서버라 속도가 제 성능보다 낮을 수 있다. 최근 노트북 CPU라면 이보다 빠르다. 메모리 결과(되느냐 마느냐)는 CPU와 상관없다.
  • 컨텍스트를 늘리면 메모리가 더 든다. 기본 4096 토큰 기준이다. 긴 문서를 넣으려고 컨텍스트를 키우면 같은 모델도 더 많은 RAM을 쓴다.
  • 3B의 최대 메모리가 상한마다 조금 다르다(3.1~3.8GiB). 여유가 있으면 커널이 캐시를 더 남겨 두기 때문으로 보인다. 4GB 상한에서도 세 번 모두 끝까지 생성했다.
  • GPU가 있으면 이야기가 다르다. 이 글은 CPU 전용 결과다. 그래픽카드 VRAM에 모델을 올리면 시스템 RAM 부담과 속도가 모두 달라진다.

내 노트북이라면

내 노트북은 2020년 인텔 맥북 프로 13형(RAM 8GB)이다. 측정은 위 리눅스 서버에서 했고 맥에서 직접 돌리지는 않았다. 8GB 상한에서 7B가 최대 6.2GiB를 썼으니, macOS와 브라우저가 3~4GB를 쓰는 이 노트북에서 7B는 스왑에 기대게 된다. 이 사양이면 3B로 시작한다.

ollama run qwen2.5:3b

RAM을 사거나 바꾼다면

  • 7B를 편하게 쓰려면 16GB: 8GB 상한에서도 돌았지만 OS 몫까지 생각하면 16GB가 맞다.
  • 14B를 쓰려면 32GB: 16GB 상한에서 13.6GiB를 썼다. OS와 함께 쓰려면 32GB가 필요하다.
  • 업그레이드 가능 여부부터: RAM 슬롯이 있는 노트북·미니PC는 모듈만 바꾸면 된다. DDR4와 DDR5 SO-DIMM은 서로 끼울 수 없다. 맥북처럼 RAM이 메인보드에 붙은 모델은 교체가 안 되니 살 때 정해야 한다.

위 기준에 맞춰 고른 상품이다. 써 보고 고른 게 아니라 사양으로 고른 것이니, 사기 전에 내 노트북과 맞는지 꼭 확인한다.

재현

측정 스크립트(measure.sh)와 27번의 원본 결과(results.tsv, 조건별 Ollama 로그)는 실험 공개 폴더에 있다. Docker가 있는 리눅스에서 bash measure.sh로 같은 순서를 다시 돌릴 수 있다. 특정 조합만 보려면 MODELS=qwen2.5:7b CAPS=8g bash measure.sh처럼 쓴다.

작업별 RAM 실측을 한 표로 모은 글: 개발자 노트북 램 16GB vs 32GB

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

비슷한 글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다