How unified memory works on GB10
DGX Spark uses NVIDIA’s GB10 chip, which combines a Grace ARM CPU and a Blackwell GPU on one package. They share 128GB of LPDDR5X memory over a 273 GB/s interconnect. 별도의 VRAM은 존재하지 않습니다. vLLM이 “GPU 메모리”를 할당할 때 실제로는 DGX OS, CUDA 런타임 및 애플리케이션들도 함께 사용하는 128GB 풀에서 일부 영역을 분리해내는 것입니다. 이로 인해 다음과 같은 현상이 발생합니다:gpu_memory_utilization은 전체 메모리 풀 중 일부만을 제어할 뿐, GPU 전용 메모리 할당량을 의미하지 않습니다.- 시스템 프로세스들도 같은 메모리 공간을 경쟁합니다. DGX OS, 백그라운드 서비스, CUDA 컨텍스트 오버헤드 등이 모델이 사용할 수 있는 메모리 양을 줄여줍니다.
- 메모리 부족 시 프로세스를 강제 종료하는 안전장치가 없습니다. 메모리 풀이 고갈되면 문제가 있는 프로세스가 종료되는 대신 DGX Spark 시스템 전체가 멈춰버립니다.
KV cache overhead on 128GB
KV 캐시는 활성화된 모든 시퀀스에 포함된 각 토큰의 키-값 텐서를 저장합니다. 이 캐시의 크기는 3 요소들에 따라 증가하는데, 여기에는 컨텍스트 길이, 동시에 처리되는 시퀀스의 수, 그리고 모델 아키텍처(레이어 및 KV 헤드의 수)가 포함됩니다.산출식
주어진 컨텍스트 길이에서 단일 시퀀스를 처리할 경우:예시: 다양한 컨텍스트 길이에서 사용되는 70B 방식의 밀집형 모델
일반적인 70B 모델을 기준으로 80개의 레이어와 8개의 KV 헤드, 그리고 헤드 차원이 128인 경우를 가정해보겠습니다:예시: 35B MoE 모델
MoE models have the same KV cache math as dense models for their total layer count. A 35B MoE model with ~64 layers at the same KV head configuration:
At 35B MoE with NVFP4 weights (~18 GB), you can fit 128K context with FP8 KV cache and still have ~65 GB of headroom.
컨텍스트 길이와 배치 크기 간의 균형
활성화된 모든 시퀀스에서 사용되는 각 토큰마다 KV 캐시 메모리가 소모됩니다. 전체 KV 캐시 용량은 다음과 같습니다:
For a 70B dense model at NVFP4 (~35 GB weights, ~75 GB remaining for KV cache):
실제 벤치마크 결과와 NVIDIA의 주장 비교
NVIDIA가 DGX Spark에 대해 발표한 82,739 토큰/초라는 수치는 단일 사용자 추론 속도가 아닌 전체 미세 조정 처리량을 의미합니다. 실제 대화형 서비스에서의 수치는 다음과 같습니다:The 82,739 tok/s figure measures aggregate throughput across many parallel fine-tuning streams. Single-user interactive inference is a different workload — expect 15-120 tok/s depending on model size and engine, which is still fast enough for real-time chat and coding agent use.
메모리 보호 기능: 시스템 정지 현상을 방지합니다
DGX Spark에서 가장 중요한 튜닝 파라미터는--gpu-memory-utilization입니다. 이 값을 지나치게 높게 설정하면 복구 불가능한 오류로 인해 시스템이 멈추게 됩니다. 반대로 보수적으로 설정하면 KV 캐시의 여유 공간이 줄어들게 됩니다
권장되는 초기 설정값
메모리 사용량을 실시간으로 모니터링하세요
두 번째 터미널을 열어서 서비스 실행 중의 메모리 사용량을 관찰하세요:memory.free 값이 2에서 3 GB 미만으로 떨어진다면 시스템이 멈출 위험이 있습니다. 이때 max_model_len, max_num_seqs, 혹은 gpu_memory_utilization 값을 줄여주어야 합니다.
튜닝 파라미터 관련 참고 자료
DGX Spark 환경에서 가장 영향력이 큰 vLLM 플래그들을 영향도 순서대로 나열했습니다:결정표: 일반적인 설정 예시
최적화 설정 방법에 관한 안내
단일 사용자 환경에서 처리량을 극대화하는 방법
Maximize concurrent users for 70B
대형 모델 배포 시 가장 안전한 설정 방안
후속 작업 및 활용 방향
DGX Spark 환경에서의 vLLM 활용법
각 모델 크기에 맞는 설치 및 실행 명령어 안내
모델 호환성
Which models fit in 128GB and their quantization options.
스파크 하나 vs 두 개
메모리 튜닝만으로는 부족할 때 두 번째 스파크가 필요한 상황에 대해 설명합니다.
KV 캐시의 개념
다양한 모델 아키텍처에서 KV 캐시가 작동하는 방식에 대한 심층적인 설명입니다.