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

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

Page content

여기서는 16GB VRAM을 갖춘 GPU에서 구동되는 여러 LLM의 속도를 비교하고, 자가 호스팅에 가장 적합한 모델을 선택하는 과정을 다루고 있습니다.

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

VRAM 블록과 벤치마크 스타일의 차트가 포함된 스타일라이즈된 GPU 이미지

이번 글에서는 속도 측면에서 가능한 한 높은 성능을 끌어내기 위한 시도를 기록하고 있습니다.

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

모델 크기 19K VRAM 19K GPU/CPU 19K T/s 32K VRAM 32K 로딩 32K T/s 64K VRAM 64K 로딩 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는 컨텍스트 크기를 의미합니다.

위의 로딩(load)은 GPU 로딩(GPU Load)입니다. 이 컬럼에 숫자가 낮게 나타난다면, 해당 모델이 주로 CPU에서 실행되고 있으며 이 하드웨어에서는 적절한 속도를 얻을 수 없음을 의미합니다. 이러한 패턴은 모델의 일부만 GPU에 적합하거나 컨텍스트로 인해 워크로드가 호스트(CPU)로 밀려나는 상황에서 사람들이 목격하는 것과 일치합니다.

llama.cpp, LLM 성능, OpenCode 및 기타 비교

설치 경로, llama-cli 및 llama-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 vs 표준 디코딩을 참고하세요 — MTP 투기적 디코딩은 27B dense 모델에서 최대 67%의 생성 처리량 향상을 보여주며, 모든 --spec-draft-n-max 레벨에서의 VRAM 비용과 컨텍스트 윈도우 트레이드오프를 보여주는 표가 포함되어 있습니다.

컨텍스트 길이가 초당 토큰 수를 변화시키는 이유

19K에서 32K나 64K 토큰으로 넘어가면서 KV 캐시가 커지고 VRAM 압력이 높아집니다. 일부 행은 64K에서 초당 토큰 수가 크게 떨어지는 반면, 다른 행은 평평하게 유지됩니다. 이는 모델 자체가 전반적으로 ‘느리다’고 가정하기보다는, 쿼트, 컨텍스트 한계 또는 레이어 오프로딩을 재검토해야 한다는 신호입니다. 이러한 숫자 뒤에 있는 예산 계산 — 토큰당 KV 바이트 수에 대한 정확한 공식, 32K/64K/128K에서의 캐시 유형 표, 그리고 자신만의 여유 공간을 계산하는 방법 — 에 대해 자세히 알고 싶으시다면 16 GB GPU에서 KV 캐시: 긴 컨텍스트를 실제로 적합하게 만들기을 참고하세요.

제가 테스트를 위해 선택한 모델과 쿼트는 제가 직접 실행하여 이 장비에서 비용/효과 측면에서 좋은 이득을 주는지 아닌지 확인하기 위한 것입니다. 따라서 여기서 200k 컨텍스트를 가진 q8 쿼트는 없습니다 :) …

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 로딩 128K: T/s
Qwen3.5-27B-UD-IQ3_XXS 16/625 9.6
Qwen3.5-122B-A10B-UD-IQ3_XXS 27/496 19.2

미세 조정 실행

몇 가지 흥미로운 모델과 쿼트에 대해 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

16 GB 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보다 더 나을까요? 의문스럽지만 그래도 확신을 위해 테스트해볼 수 있습니다.
  • 24 GB를 갖추면 25–34B 밴드가 2026년 기본값이 되는 이유, 그리고 Q4 Qwen3.8-27B가 실제로 이 16 GB 카드에 적합하지 않은 이유에 대해 자세히 알고 싶으시다면 2026년 오픈 모델의 효율적인 프런티어를 참고하세요.

구독하기

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