본문으로 건너뛰기
r/LLMDevs조회 1

A100 한 장에 128K 사용자 9명

계층형 KV Cache로 A100 한 장에서 128K 컨텍스트 사용자 9명을 유지했습니다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

긴 컨텍스트 서빙에서 KV Cache가 동시성을 제한하는 문제를 확인하기 위해 단일 A100 80GB에서 사용자별 약 128K 컨텍스트와 독립적인 needle check를 유지하는 실험을 진행했습니다. 전체 KV Cache를 같은 정밀도로 저장하지 않고 최신·민감한 영역은 높은 정밀도로, 오래된 V tail은 4·3·2비트 계층형 bit-plane 표현으로 저장해 메모리 사용량을 낮췄습니다. 그 결과 9명의 동시 사용자를 캐시에 상주시켰고 사용자별 검색 검사를 통과했지만, 이 지점은 현재 용량 한계이며 2명과 4명 구간은 V2 레시피로 재측정 중입니다. 따라서 7월 V1 결과와 이번 V2 결과를 직접 비교하려면 동일한 레시피로 전체 처리량 곡선을 다시 구성해야 합니다.

실용적 조언

  • 긴 컨텍스트 서빙을 평가할 때는 사용자 수와 컨텍스트 길이만 보지 말고 사용자별 KV Cache 정밀도와 메모리 상주 여부를 함께 기록해야 합니다. 최신·민감한 영역은 높은 정밀도로 유지하고 오래된 영역을 더 낮은 비트 표현으로 이동시키는 방식이 전체 캐시 풋프린트를 줄이는 기본 절차입니다. 모든 비교 지점에는 동일한 V2 레시피와 독립적인 사용자별 needle check를 적용해야 합니다.
  • V tail을 INT4로 단순화하지 말고 4·3·2비트 계층형 bit-plane 표현을 기준으로 메모리 풀을 계산해야 합니다. 7월 V1 결과와 새 V2 결과를 한 곡선에 섞으면 레시피 차이와 동시성 차이를 구분하기 어렵습니다. 2명, 4명, 9명 구간을 같은 정밀도 설정으로 다시 측정한 뒤 사용자별 처리량과 검색 통과 여부를 함께 비교하는 편이 적절합니다.

섹션별 상세

01
작성자는 단일 A100 80GB에서 사용자별 약 128K 컨텍스트를 유지하며 9명의 동시 사용자를 처리한 실험 결과를 공유했습니다. 각 사용자에 대해 독립적인 needle check를 수행했고, 검색 검사가 계속 통과한 상태에서 9명 구간을 현재 용량 한계로 기록했습니다. 긴 컨텍스트 추론에서 KV Cache가 동시성을 제한하는 메모리 병목이라는 점을 실제 수용 인원과 컨텍스트 길이로 측정한 사례입니다.
단일 80GB A100에서 FP16 KV, FP8 KV, FraQtl 세 설정의 동시 사용자별 처리량을 비교한 그래프입니다.
Chart이미지는 FP16 KV가 사용자 2명 구간에서 66.6 tok/s를 기록한 뒤 메모리 부족으로 표시되고, FP8 KV는 최대 4명 구간에서 177.6 tok/s를 기록하며, FraQtl은 사용자 2명부터 9명까지 블록을 채우면서 134.1 tok/s를 기록하는 모습을 담고 있습니다. 하단에는 Qwen3-4B-Instruct-2507, vLLM, 9/9 passkey 검사가 표기되어 본문의 단일 A100 장문 컨텍스트 실험과 직접 연결됩니다.
FP16 KV, FP8 KV, FraQtl의 사용자 수별 메모리 수용량과 토큰 처리량을 비교한 동일한 실험 차트입니다.
Chart차트는 FP16 KV가 66.6 tok/s와 메모리 부족 상태를 보이는 반면 FP8 KV는 4명까지 177.6 tok/s를 기록하고, FraQtl은 9개 사용자 블록을 모두 수용하면서 134.1 tok/s를 기록한다고 나타냅니다. 각 블록에 대한 passkey 회수 성공 표시와 0~100% 범위의 배치 표기가 있어, 단순 처리량 비교가 아니라 긴 컨텍스트 캐시 상주와 검색 검사를 함께 측정한 결과임을 뒷받침합니다.
02
KV Cache 전체에 동일한 정밀도를 적용하지 않고, 최신 데이터나 민감한 KV는 높은 정밀도로 유지하며 오래된 영역을 더 저렴한 표현으로 이동시키는 계층형 방식을 사용했습니다. 컨텍스트가 길어질수록 일부 캐시 영역이 4·3·2비트 표현으로 바뀌어 전체 캐시 풋프린트를 낮추는 구조입니다. 작성자는 V tail이 일반적인 INT4가 아니라 4·3·2비트 bit-plane 표현이라고 정정했으며, 실제 풀 크기도 이 구조와 일치한다고 밝혔습니다.
03
실험에는 동시 사용자 수, 사용자별 컨텍스트 길이, 처리량, 정밀도, 메모리라는 여러 변수가 함께 포함됩니다. 9명·약 128K 컨텍스트 결과는 단일 A100에서 캐시를 상주시키면서 사용자별 검색 검사를 통과한 지점이지만, 2명과 4명 구간은 아직 같은 V2 계층형 레시피로 재측정 중입니다. 따라서 7월의 V1 수치와 이번 V2 수치를 같은 처리량 곡선에 바로 비교하기보다, 동일한 레시피로 다시 맞춘 뒤 해석해야 합니다.

용어 해설

KV 캐시(KV Cache)
KV Cache는 Transformer가 이전 토큰의 Key와 Value를 저장해 긴 대화에서 과거 토큰을 다시 계산하지 않도록 하는 메모리 구조입니다. 컨텍스트가 길어질수록 사용자별 저장 공간이 커져 동시 처리량을 제한하는 주요 요인이 됩니다.
KV 캐시 양자화(KV Cache Quantization)
KV Cache Quantization은 저장된 Key와 Value를 더 적은 비트 수로 표현해 메모리 사용량을 줄이는 방법입니다. 이 글에서는 모든 영역에 같은 정밀도를 적용하지 않고 오래된 영역을 4·3·2비트 계층 표현으로 점진적으로 낮춥니다.
비트 플레인 표현(Bit-plane Representation)
Bit-plane Representation은 값을 비트 단위 평면으로 나눠 저장하는 방식입니다. 글의 V tail은 단순 INT4가 아니라 4·3·2비트 계층 구조를 사용하며, 실제 메모리 풀 크기도 이 표현에 맞춰집니다.
FP8
FP8은 8비트 부동소수점 표현으로, KV Cache의 메모리 부담을 줄이면서 상대적으로 높은 정밀도를 유지하는 저장 형식입니다. 이 실험에서는 FP8이 처음 5명의 동시 사용자를 수용하는 구간에 쓰였다고 기록됐습니다.

언급된 도구

vLLM중립

계층형 KV Cache 레시피를 적용한 장문 컨텍스트 추론 서빙 구현

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 19.수집 2026. 08. 19.출처 타입 REDDIT

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.