llama.cpp를 이용한 16GB VRAM LLM 벤치마크 (속도 및 컨텍스트)

16GB VRAM에서 llama.cpp의 토큰 처리 속도 (표)

Page content

여기서는 VRAM이 16GB인 GPU에서 여러 LLM의 속도를 비교하고, 자체 호스팅에 가장 적합한 모델을 선정해 보겠습니다.

이 LLM들은 llama.cpp를 사용하여 19K, 32K, 64K 토큰 컨텍스트 윈도우로 실행해 보았습니다.

VRAM 블록과 벤치마크 스타일의 차트가 포함된 스타일화된 GPU

이 글에서는 속도 측면에서 최대한 성능을 끌어내려는 제 시도들을 기록해 보겠습니다.

LLM 속도 비교표 (초당 토큰 수 및 VRAM)

모델 크기 19K VRAM 19K GPU/CPU 19K T/s 32K VRAM 32K Load 32K T/s 64K VRAM 64K Load 64K: T/s
Qwen3.6-35B-A3B-UD-IQ3_XXS 13.2 13.8GB 96%/100% 147.5 14.0GB 96%/101% 149.1 14.7GB 96%/101% 145.8
Qwen3.6-35B-A3B-UD-IQ4_XS 17.7 14.3GB 62%/266% 95.0 14.9GB 58%/279% 92.3 14.9GB 57%/293% 86.4
Qwen3.5-35B-A3B-UD-IQ3_S 13.6 14.3GB 93%/100% 136.4 14.6GB 93%/100% 138.5 14.9GB 88%/115% 136.8
Qwen3.5-27B-IQ3_XXS-bartowsky 11.3 12.8 98/100 44.9 13.5 98/100 44.9 14.5 45/415 23.6
Qwen3.5-27B-UD-IQ3_XXS 11.5 12.9 98/100 45.3 13.7 98/100 45.1 14.7 45/410 22.7
Qwen3.5-27B-IQ4_XS.gguf 15.0 14.6 49/406 20.5 14.7 37/465 17.4 14.7 23/533 13.3
Qwen3.5-122B-A10B-UD-IQ3_XXS 44.7 14.7 30/470 22.3 14.7 30/480 21.8 14.7 28/490 21.5
Qwen3.5-122B-A10B-UD-IQ3_S 46.5 14.7 25/516 19.4 14.7 24/516 19.5 14.7 24/516 19.6
Mistral-Small-4-119B UD-IQ3_XXS 42.8 14.8 28/585 30.4 14.7 27/574 28.5 14.9 20/590 31.5
Qwen3-Coder-Next-UD-IQ4_XS 38.4 14.6 32/460 41.1 14.7 29/440 41.3 14.8 32/460 38.3
Nemotron Super 120b IQ3_XXS 56.2 15.0 26/517 17.5 14.6 26/531 17.4 14.6 26/535 17.6
gemma-4-26B-A4B-it-UD-IQ4_XS 13.4 14.7 95/100 121.7 14.9 95/115 114.9 14.9 75/190 96.1
gemma-4-31B-it-UD-IQ3_XXS 11.8 14.8 68/287 29.2 14.8 41/480 18.4 14.8 18/634 8.1
GLM-4.7-Flash-IQ4_XS 16.3 15.0 66/240 91.8 14.9 62/262 86.1 14.9 53/313 72.5
GLM-4.7-Flash-REAP-23B IQ4_XS 12.6 13.7 92/100 122.0 14.4 95/102 123.2 14.9 71/196 97.1

19K, 32K, 64K는 컨텍스트 크기를 나타냅니다.

위에 있는 loadGPU Load를 의미합니다. 이 열의 숫자가 낮다면, 모델이 주로 CPU에서 실행 중이며 이 하드웨어에서는 만족스러운 속도를 얻지 못하고 있다는 뜻입니다. 이는 모델의 너무 작은 부분이 GPU에 탑재되거나 컨텍스트가 호스트로 작업을 밀어낼 때 사람들이 목격하는 패턴과 일치합니다.

llama.cpp, LLM 성능, OpenCode 및 기타 비교에 대하여

설치 경로, llama-clillama-server 예시, 그리고 VRAM과 초당 토큰 수(컨텍스트 크기, 배칭, -ngl)에 영향을 주는 플래그가 궁금하시다면 llama.cpp CLI 및 서버를 사용한 빠른 시작부터 시작해 보세요.

더 넓은 성능 관점(처리량 대 지연 시간, VRAM 한계, 병렬 요청, 그리고 하드웨어 및 런타임 간의 벤치마크 통합 방법)에 대해 알고 싶다면 2026년 LLM 성능: 벤치마크, 병목 현상 및 최적화를 참조하세요.

응답의 품질은 다음과 같은 다른 기사에서 분석됩니다:

저는 Ollama의 LLM에 대해 비슷한 테스트를 진행했습니다: 16GB VRAM GPU용 Ollama의 최고의 LLM.

llama.cpp를 통해 Qwen 3.6 27B 또는 35B를 실행 중이고 생성 속도를 더 높이려면 16GB GPU에서의 Qwen 3.6 MTP 대 표준 디코딩을 참조하세요. — MTP 추측 디코딩은 27B dense 모델의 경우 최대 67%의 생성 처리량을 추가하며, 모든 --spec-draft-n-max 단계에서의 VRAM 비용과 컨텍스트 윈도우 트레이드오프를 보여주는 표가 포함되어 있습니다.

왜 컨텍스트 길이가 초당 토큰 수를 바꾸는가

19K에서 32K 또는 64K 토큰으로 이동할 때, KV 캐시가 커지고 VRAM 압력이 증가합니다. 일부 행은 64K에서 초당 토큰 수가 크게 감소하는 반면, 다른 행은 평평하게 유지되는 것을 보여주는데, 이는 모델이 일반적으로 “느리다"고 가정하는 대신 quants, 컨텍스트 한계 또는 레이어 오프로딩을 다시 검토해야 한다는 신호입니다.

제가 테스트하기로 선택한 모델과 quants는 제가 직접 실행하여 이 장비에서 비용/편익 측면에서 좋은 이점을 제공하는지 확인하기 위함입니다. 그러니 200k 컨텍스트를 가진 q8 quants는 여기 없습니다 :) …

GPU/CPU는 nvitop으로 측정한 부하입니다.

llama.cpp는 레이어를 GPU로 언로딩하는 자동 구성 시 1GB를 여유로 남기려고 시도합니다. 우리는 명령줄 파라미터 -ngl을 통해 이 매개변수를 수동으로 지정하지만, 저는 여기서 이를 미세 조정하지 않습니다. 단지 컨텍스트 윈도우 크기가 32k에서 64k로 증가할 때 상당한 성능 저하가 발생한다면, 언로딩된 레이어의 수를 미세 조정하여 64k에서의 속도를 높일 수 있다는 점을 이해해야 합니다.

테스트 하드웨어 및 llama.cpp 설정

저는 다음과 같은 구성의 PC에서 LLM 속도를 테스트했습니다:

  • CPU i-14700
  • RAM 64GB 6000Hz (2x32GB)
  • GPU RTX-4080
  • NVidia 드라이버가 설치된 Ubuntu
  • llama.cpp/llama-cli, 언로딩된 레이어 미지정
  • llama-cli 시작 전 사용된 초기 VRAM: 300MB

128K 컨텍스트에서 추가 실행 (Qwen3.5 27B 및 122B)

모델 128K Load 128K: T/s
Qwen3.5-27B-UD-IQ3_XXS 16/625 9.6
Qwen3.5-122B-A10B-UD-IQ3_XXS 27/496 19.2

미세 조정된 실행

몇몇 흥미로운 모델과 quants에 대해 VRAM을 더 잘 활용하기 위한 특별한 llama-cpp 명령줄 파라미터를 찾아보았습니다. 다음은 제가 달성할 수 있었던 것입니다:

모델 컨텍스트 GPU상 레이어 CPU/CPU 부하 속도
Qwen3.5-27B-IQ4_XS.gguf 18k 65 98%/100% 38.0
Qwen3.5-27B-IQ4_XS.gguf 64k 53 33%/488% 15.7

16GB VRAM 빌드를 위한 교훈

  • 저의 현재 최애인 Qwen3.5-27B-UD-IQ3_XXS는 스위트스팟인 50k 컨텍스트에서 좋은 모습을 보입니다 (약 36t/s를 얻고 있습니다)
  • Qwen3.5-122B-A10B-UD-IQ3_XXS는 64K 이상의 컨텍스트에서 성능면에서 Qwen3.5 27B를 추월하고 있습니다.
  • 저는 Qwen3.5-35B-A3B-UD-IQ3_S를 100k 토큰 컨텍스트를 처리하도록 밀어넣을 수 있으며, 이는 VRAM에 맞으므로 성능 저하가 없습니다
  • 저는 16GB VRAM에서는 gemma-4-31B를 사용하지 않을 것입니다, 하지만 gemma-4-26B는 보통-좋게..?, 테스트가 필요합니다.
  • Nemotron cascade 2와 GLM-4.7 Flash REAP 23B가 얼마나 잘 작동하는지 테스트해야 합니다. Qwen3.5-35B q3보다 나아질까요? 저는 의문이 있지만, 여전히 그 의심을 확인하기 위해 테스트해 볼 것입니다.

구독하기

시스템, 인프라, AI 엔지니어링에 관한 새 글을 받아보세요.