인프라와 비용

NVIDIA, DGX Spark에서 Ling-3.0-flash 최적화 3가지 공개, GSM8K 처리량 42.5% 향상

NVIDIA가 GB10 기반 데스크톱 DGX Spark에서 1240억 매개변수 MoE 모델의 생성 속도를 높이는 방법을 공개했다. GSM8K 전체 문항 기준 평균 지연은 24.5% 줄었고 정확도는 그대로였다.

루카스 ·

흰 배경 위에 검은색 소형 데스크톱 기기 아홉 대 안팎이 세 줄로 배열되어 있다. 맨 위 가운데에는 금색 외관의 기기가 하나 있고, 나머지는 어두운 회색과 검은색 외관에 통풍 구멍이나 로고가 보인다.

NVIDIA가 개발자용 데스크톱 DGX Spark에서 전문가 혼합(MoE) 모델의 추론 속도를 높이는 최적화 3가지를 기술 블로그에 공개했다. Ant Group 산하 Inclusion AI의 Ling-3.0-flash에 세 가지를 모두 적용하고 GSM8K 1,319문항 전체를 풀게 했더니, 적용 전과 비교해 디코딩 처리량은 42.5% 늘고 평균 지연 시간은 24.5% 줄었다.1

Ling-3.0-flash는 전체 매개변수 1240억 개 가운데 토큰당 51억 개만 쓰는 MoE 모델이다. 측정은 배치 크기 1, 곧 한 사용자의 요청을 처리하는 조건에서 이뤄졌다. NVIDIA는 코드와 배포 방법을 Ling cookbook에 올렸다고 밝혔다.1

DGX Spark는 GB10 Grace Blackwell 슈퍼칩을 쓰는 데스크톱 장비로, 통합 메모리는 64GB 또는 128GB다. NVIDIA에 따르면 128GB 모델은 최대 2000억 매개변수, 64GB 구성은 최대 1000억 매개변수 모델까지 다룬다. 64GB 구성은 일부 OEM 파트너를 통해서만 나온다. 메모리 대역폭은 273GB/s다.2,3

병목은 가중치 읽기

NVIDIA가 프로파일링한 결과, 디코딩은 메모리 대역폭에 묶여 있었고 모델 가중치를 읽는 시간이 실행 시간을 좌우했다. 그중에서도 MoE 연산과, 어휘 전체에 점수를 매기는 출력층(LM head) 투영이 두드러졌다. 그래서 디코딩 단계마다 읽는 가중치를 줄이고, 검증 한 번에 더 많은 토큰을 만드는 쪽으로 방향을 잡았다.

기준 설정은 공식 cookbook의 W4A8 구성이다. FlashInfer MXFP4 MoE 커널, NVIDIA CUTLASS 밀집 GEMM, FP32 LM head 옵션을 썼다. LM head는 은닉 차원 2,560을 어휘 157,184개로 투영한다. 모델은 42개 층으로, Kimi Delta Attention 선형 어텐션 35개와 멀티헤드 잠재 어텐션 7개로 이뤄지고, MoE 층은 토큰마다 512개 전문가 중 8개와 공유 전문가 1개를 쓴다.1

최적화 3가지와 효과

첫째는 MoE 백엔드를 FlashInfer에서 Humming으로 바꾸는 것이다. Humming은 humming-kernels pip 패키지로 받는 독립 커널 라이브러리다. NVRTC로 실제 행렬 크기, 데이터 형식, GPU 구조에 맞춰 CUBIN을 실행 중에 컴파일하고 결과를 ~/.humming/cache에 저장한다. 이 모델의 비교적 좁은 moe_intermediate_size 768에도 맞춘다. 커널 하나는 몇 초면 컴파일되지만, FlashInfer CUTLASS 경로는 ninja로 97개 대상을 컴파일하느라 수십 분이 걸린다.

둘째는 LM head의 온라인 FP8 양자화다. 체크포인트에는 LM head가 BF16으로 저장되어 있어 로딩 때 양자화되지 않는다. 토큰을 만들 때마다 이 가중치 전체를 읽어야 하므로, FP8로 바꾸면 이 층의 읽기량이 절반이 된다. 나머지 모델은 원래의 FP8/MXFP4 설정으로 로드된다. SGLANG_ENABLE_FP8_LM_HEAD=1로 켜며, 기준 구성의 --enable-fp32-lm-head 옵션과는 함께 쓸 수 없다.

셋째는 모델에 내장된 NEXTN 층을 쓰는 다중 토큰 예측(MTP) 추측 디코딩이다. NEXTN 층은 추가 학습이나 내려받기 없이 초안 모델로 쓸 수 있다. 초안이 3개 토큰을 차례로 예측하면 본 모델이 4개 위치를 한꺼번에 검증해 맞는 앞부분만 받아들인다.

검증 한 번의 비용은 일반 디코딩 한 단계의 약 2.26배로 측정됐다. 배치 크기 1에서는 KV 읽기가 가중치 읽기보다 작아, 비용은 어텐션이 아니라 MoE 전문가 활성화에서 나온다. 일반 디코딩은 토큰 하나에 전문가 8개를 쓰지만, 4개 토큰을 검증하면 최대 32개가 활성화된다.1

합성 작업(입력 32K, 출력 2K 토큰) 단계별 측정1
구성토큰당 출력 시간초당 토큰기준 대비
기준27.71ms36.09-
+ Humming MoE 백엔드25.35ms39.45+9.3%
+ 온라인 FP8 LM head22.76ms43.94+21.7%
+ MTP(NEXTN)9.72ms102.88+185.1%

실제 작업에서는 이득이 줄었다

NVIDIA는 합성 작업이 반복적인 출력과 단순한 샘플링 때문에 추측 디코딩의 이득을 체계적으로 과대평가한다고 설명했다. 그래서 GSM8K 1,319문항 전체로도 비교했다. 5-shot 프롬프트, 샘플링 온도 0.6, top_p 0.95, top_k 29, 최대 토큰 32,768, 사고 과정 출력을 켠 조건이며, 세 최적화를 빼고는 샘플링 변수, 파서, 시드, 메모리 할당을 모두 맞췄다.1

GSM8K 전체 문항 비교(기준 대비 세 최적화 적용)1
지표기준최적화 적용변화
토큰당 출력 시간26.45ms18.56ms-29.8%
디코딩 처리량(토큰/초)37.8153.89+42.5%
GSM8K 정확도96.89%96.82%-0.08%p
평균 지연15.21초11.49초-24.5%
지연 P508.36초6.11초-27%
지연 P9550.20초38.60초-23%
평균 첫 토큰 시간0.207초0.214초-

요청 오류와 잘림은 없었다. NVIDIA는 정확도 변화가 통계적으로 감지되지 않는다고 밝혔다. MTP 수락 길이는 GSM8K에서 2.68로, 합성 작업의 3.90보다 짧았다. NVIDIA가 든 차이는 세 가지다. 합성 출력이 더 반복적이라 초안이 잘 받아들여지고, 합성 테스트는 그리디 디코딩을 썼으며, GSM8K 출력 중앙값은 약 310토큰이라 고정 비용 절감분이 짧은 출력에 나뉜다. NVIDIA는 합성에서 나온 185.1%가 다른 작업의 이득을 보장하지 않으므로 실제 배포와 비슷한 작업으로 평가하라고 권했다.1

함께 켤 때의 함정

FP8 LM head와 MTP를 같이 쓰려면 초안 모델이 가중치 텐서만이 아니라 LM head 모듈 전체를 본 모델과 공유해야 한다. 원래 Ling NEXTN 구현은 이 인터페이스를 제공하지 않았다. 그대로 켜면 프레임워크가 조용히 대체 경로로 넘어가 초안이 FP8 가중치를 BF16으로 해석하고, 수락 길이가 1.00으로 떨어지며, 처리량이 최적화 전 구성보다 낮아진다. LM head 모듈 전체를 공유하면 정상으로 돌아온다.

NVIDIA는 배포 때 시작 시점에 최적화가 모두 켜졌는지 확인하라고 권했다. 나중의 성능 수치로 설정 상태를 짐작하는 것보다 믿을 만하다는 이유다. Humming과 FP8 LM head는 디코딩 한 단계의 비용을 줄이고 MTP는 단계 수를 줄이는 방식이라 작동 원리가 겹치지 않으며, 그래서 한꺼번에 쓸 수 있다고 NVIDIA는 설명했다.1

Ling-3.0-flash는 어떤 모델인가

NVIDIA 블로그에 따르면 Ling-3.0-flash는 기본 256K 토큰 컨텍스트 창을 제공하며 1M 토큰까지 늘릴 수 있다. 이전 Ling flash 모델보다 장기 작업 안정성, 도구 호출 정확도, 하네스 호환성이 나아졌고, 추론은 켜고 끌 수 있다. MarkTechPost는 이 모델이 MIT 라이선스의 오픈 웨이트 Ling 3.0 계열이며, 기본 체크포인트와 FP8, INT4, GGUF 빌드가 있고 flash에는 FP4도 있다고 전했다. 이번 실험에 쓴 것은 FP4 체크포인트다.1,3

성능 수치는 Inclusion AI가 모델 카드에 밝힌 값이다. SWE-Bench Pro 56.6, SWE-Bench Multilingual 72.4, MathArena AIME 2026 93.2, HMMT Feb 2026 87.0이다. Artificial Analysis 결과로는 GPQA Diamond 85.5%, Terminal-Bench 2.1 55.4%이며, Humanity's Last Exam은 자체 보고 22.7, 독립 측정 23.7%다.

Artificial Analysis가 집계한 Inclusion AI의 API 가격은 입력 100만 토큰당 0.075달러, 출력 0.22달러다. 캐시 적중, 입력, 출력을 7:2:1로 섞은 혼합 가격은 약 0.05달러이고, 출력 속도는 초당 231.7토큰으로 같은 급 26개 모델 중 3위였다. OpenRouter에서는 Novita와 DeepInfra가 입력 0.06달러, 출력 0.18달러에 올렸다. Artificial Analysis의 혼합 가격은 Step 3.7 Flash 0.18달러, Gemini 3.5 Flash-Lite 0.33달러, GPT-5(medium) 1.34달러로, 품질을 보정하지 않은 가격 비교다.

Inclusion AI의 양자화 비교표에서 FP4는 GPQA-diamond 83.68로 BF16의 84.97보다 낮았다. IFBench는 74.49에서 73.87, ArcPrize는 68.75에서 68.06으로 내려갔고, 낙폭이 가장 큰 SciCode는 41.24에서 38.43이 됐다.3

이번 결과는 클라우드 없이 책상 위 장비 한 대에서 대형 MoE 모델을 한 사람이 쓰는 환경에 해당한다. 다만 이득은 작업에 따라 크게 달라진다. 같은 최적화가 합성 작업에서는 처리량을 185.1% 높였고 수학 문제 풀이(GSM8K)에서는 42.5% 높였다. NVIDIA가 든 차이의 원인은 합성 출력의 반복성(수락 길이 3.90 대 2.68), 그리디 디코딩 대 샘플링, 출력 길이(2K 대 중앙값 약 310토큰)다. 자신의 작업으로 직접 재 보고, 세 기능이 실제로 켜졌는지 확인해야 하는 이유다.1

댓글

기사에 대한 의견이나 틀린 내용 제보를 남겨 주세요.

댓글을 불러오고 있습니다.