URL: https://www.youtube.com/watch?v=9Qf_QLt7IWY 날짜: 2026-09-01 (실제 업로드일; 처리일 2026-09-04) 채널: chester_roh (YouTube 표시명: AI Frontier Korea (노정석)) 원제: EP 112. What Happens Inside an AI Chip: From KV Cache to Roofline
📌 핵심 질문 / AI 반도체의 성능과 수익성은 무엇으로 결정되는가
==LLM 서비스의 성능과 토큰당 경제성은 단순한 연산량이 아니라 프리필(prefill)·디코드(decode)의 병목, KV 캐시의 메모리 비용, 배칭과 스케줄링, 하드웨어의 Roofline 위치가 함께 결정한다.==
- 프리필은 많은 토큰을 한꺼번에 처리해 계산 집약적(compute-bound)이 되지만, 디코드는 토큰 하나씩 순차 생성해 메모리 대역폭에 묶인다(memory-bound).
- KV 캐시는 문맥이 길어지고 에이전트의 반복 호출이 늘수록 HBM을 수십 GB씩 점유하며, 읽기·재사용·압축·오프로딩 전략이 서비스 비용을 좌우한다.
- 인터랙티비티(interactivity)와 처리량(throughput)은 서로 트레이드오프 관계이므로, 실제 서비스는 원하는 토큰 속도와 GPU당 처리량을 함께 보고 하드웨어와 소프트웨어를 선택해야 한다.
1. 컴퓨트 부족과 추론 인프라의 경제성
모델과 서비스 수요가 폭발할수록 가치 포착(value capture)은 모델에서 인프라와 애플리케이션 양쪽으로 이동하며, 전력·메모리·칩·서빙 소프트웨어의 최적화가 사업의 핵심이 된다.
1.1. 영구적인 “compute crunch”
-
컴퓨트 부족의 구조화
- OpenAI의 compute crunch: Sam Altman은 2026년 4월 OpenAI Forum에서 컴퓨트가 심각하게 부족한 세계를 언제 벗어날 수 있을지 말했지만, 앞으로도 컴퓨트 부족에서 벗어나지 못하고 계속 부족한 세계에 살 가능성이 크다고 봤다.
- 훈련과 추론의 동시 부족: 모델 훈련뿐 아니라 사용자에게 답을 생성하는 추론에도 컴퓨트가 부족해, GPU와 AI 반도체를 더 많이 확보하는 일이 지속적인 경쟁이 된다.
-
토큰 수요의 폭발
- GCP 사용량: Google은 2026년 5월 Google I/O에서 GCP 토큰 사용량이 12개월 동안 50배 증가했다고 발표했다.
- 가속되는 증가율: 2025년 9월 AI Infrastructure Summit에서는 불과 두 달 만에 다시 두 배가 되어 14개월 기준 100배가 됐다고 보고했고, 이후 2024년 수준의 약 330배까지 더 증가했다.
1.2. 모델·데이터센터·전력의 병목
-
모델 규모의 재확대
- 비공식 파라미터 추정: Fable 5가 약 8T(조) 파라미터라는 이야기가 있고, 한동안 수조 파라미터 이상으로 커지지 않는 듯했던 모델 규모가 다시 증가하고 있다.
- 초대형 모델 소문: Mythos가 약 10T 파라미터라는 소문까지 있어, 모델 성장 자체가 컴퓨트·메모리 수요를 계속 밀어 올린다.
-
데이터센터 투자와 전력 연결
- 세계적 투자: 2030년까지 데이터센터에 약 6.7조 달러가 투입될 것으로 추정되며, 원화로 거의 1경 원에 해당한다.
- 한국의 메가프로젝트: 한국에서도 네 개의 메가프로젝트가 2035년까지 국내에 18.4GW 규모의 데이터센터를 건설하려 한다.
- 전력망 대기: 미국에서는 데이터센터를 지어도 전력 연결까지 평균 약 5년이 걸리며, 수도권의 데이터센터 전력 신청은 절반 이상이 탈락한다는 보도가 이어진다.
1.3. 매출 증가와 GPU 증가의 간극
-
Anthropic 사례
- 서로 다른 성장률: Anthropic은 3년 연속 매출을 매년 10배씩 키우는 반면, 프런티어 랩은 컴퓨트 용량을 매년 3배씩 늘린다.
- 연간 3.3배의 간극: GPU 컴퓨트는 3배, 매출은 10배 증가하므로 두 성장률 사이의 간극이 매년 약 3.3배씩 벌어진다.
-
간극을 설명하는 세 가지 경로
- 추론 마진 확대: 추론 마진을 높이면 같은 컴퓨트로 매출을 늘릴 수 있지만, Anthropic의 추론 마진은 이미 70~80%로 알려졌고 상한을 90%로 잡아도 추가 여지가 거의 없다.
- GPU 배분 변경: GPU 100대 중 훈련 70대·서비스 30대를 훈련 50대·서비스 50대로 바꾸면 추론 매출을 늘릴 수 있지만, 현재 비율 자체가 대략 50 대 50이고 훈련을 줄이면 모델 개발력이 약해져 생존 경쟁에서 불리하다.
- 컴퓨트 단가 상승: 남는 경로는 컴퓨트 단가를 올리는 것이다. 네오클라우드 같은 사업자가 높은 수익을 내고, 단기 임대 가격이 장기 임대보다 두 배 이상 비싸지는 현상이 실제 단가 상승을 보여준다.
1.4. HyperAccel의 Bertha와 LPDDR 전략
-
제품 포지셔닝
- 데이터센터급 AI 칩: HyperAccel의 Bertha는 회사가 처음 만든 데이터센터급 AI 칩이며, 모두가 사용하는 HBM 대신 저전력 DDR인 LPDDR을 채택한다.
- 전력과 공급망: LPDDR은 HBM보다 전력 소모가 낮고, HBM처럼 비싸거나 구하기 어렵지 않아 훨씬 낮은 비용으로 공급할 수 있다. 목표는 AI 서비스 비용을 크게 낮추는 것이다.
-
출시와 성능 설계
- 제조와 bring-up: 삼성 4nm 공정으로 제조했고 2026년 3월 말 칩이 나왔다. bring-up은 소프트웨어를 칩에 올려 실제 서비스를 제공할 수 있는 수준까지 끌어올리는 작업이다.
- PoC 일정: 2026년 8월 말 열린 Hot Chips에서 시연했고, 추가 개선 후 한두 달 안에 시장에 널리 공개해 PoC를 진행할 계획이다.
- 메모리 구성: PCIe 카드 양면에 LPDDR을 네 개씩, 총 여덟 개 배치해 DDR을 대량으로 탑재했다. 이 정도 구성의 칩은 세계적으로 NVIDIA나 과거 Meta 제품처럼 많지 않다.
- 대역폭 활용: Bertha의 명목 대역폭은 546GB/s로 H100의 약 3TB/s, 즉 약 6분의 1이지만, 내부 아키텍처가 대역폭의 90% 이상을 활용한다. 일반적인 워크로드는 최적화 전 약 50%, 최적화 후 약 70%만 실제 활용한다.
- 가격과 용량: 목표 가격은 약 5,000달러, 1,000만 원 미만이며 칩당 192GB 메모리를 제공한다. 적은 수의 칩으로도 큰 모델을 서비스할 수 있다.
-
속도보다 비용이 중요한 서비스
- 애플리케이션별 요구 차이: 메모리 대역폭은 속도에 직결되므로 LPDDR 칩은 느릴 수 있지만 모든 애플리케이션이 최고 속도를 요구하지는 않는다.
- 사용자 경험의 현실: ChatGPT 사용자는 답을 읽으며 기다리는 시간이 길다. 이 대기와 추론의 비효율이 누적되는 시장에서는 낮은 전력·낮은 가격이 충분한 경쟁력이 된다.
2. LLM 추론의 두 단계와 Transformer 내부
LLM 추론은 입력을 한꺼번에 처리하는 프리필과, 앞에서 생성한 토큰을 다시 입력해 다음 토큰을 순차적으로 만드는 디코드로 나뉜다.
2.1. 프리필과 디코드의 흐름
-
토마토 질문의 예시
- 프리필: “Is tomato a fruit?”라는 질문을 편의상 네 토큰으로 놓으면, 네 토큰이 모두 들어간 뒤 첫 출력 토큰 “Yes”를 계산한다. 이 일괄 입력·계산 단계가 프리필이다.
- 디코드: “Yes”를 다시 입력해 “it”을 만들고, “it”에서 “is”를 만들며, “is” 다음에 문장 종료를 뜻하는 EOS(end-of-sentence) 토큰이 나오면 반복을 끝낸다.
-
시간 지표
- TTFT: 입력이 들어온 순간부터 첫 토큰 “Yes”가 나올 때까지가 TTFT(time to first token)다.
- TBT와 TPOT: “Yes”가 들어가 “it”이 나오는 한 번의 디코드 간격은 TBT(time between tokens) 또는 TPOT(time per output token)라고 부른다. 용어마다 미세한 정의 차이는 있으나 실무에서는 거의 바꿔 쓴다.
-
서로 다른 병목
- 프리필의 병렬성: 입력은 1,000~2,000토큰일 수 있고 책 한 권 전체일 수도 있지만, GPU는 이를 한 번의 큰 계산으로 처리한다.
- 디코드의 순차성: 앞 토큰이 처리되어야 다음 토큰을 생성할 수 있어 한 번에 한 토큰씩 진행한다. 따라서 두 단계의 최적화 목표가 근본적으로 다르다.
2.2. Transformer의 계산 구조
-
Attention과 FFN
- 기본 경로: 토큰이 들어오면 위치 정보는 내부에서 RoPE(Rotary Position Embedding)로 처리되고, attention 블록을 거친 뒤 FFN(feed-forward network)을 통과한다. 여러 레이어를 반복한 뒤 LM head가 다음 토큰을 선택한다.
- 파라미터 비중: 100B dense 모델에서는 attention이 파라미터의 약 20%, FFN이 약 80%다. 즉 FFN에 약 4배 많은 파라미터가 있다. MoE(Mixture of Experts)에서는 비중이 FFN 쪽으로 더 기운다.
-
입출력의 세 차원
- B·S·D: B는 동시에 처리하는 요청의 배치(batch), S는 토큰 수 또는 시퀀스 길이(sequence length), D는 각 토큰 벡터의 임베딩 차원이다.
- 프리필과 디코드: 프리필의 S는 최대 100만 토큰까지 커질 수 있고 출력은 다음 토큰 하나라서 출력 형태는 사실상 2차원으로 볼 수 있다. 디코드는 입력과 출력 모두 한 토큰씩이라 S=1인 상태가 반복된다.
- 배치의 의미 차이: PyTorch 학습에서 배치는 문장 수를 뜻하지만, 추론에서 배치는 시퀀스 길이가 제각각인 여러 사용자를 뜻한다.
-
토큰 ID에서 벡터로
- 임베딩 변환: 처음 토큰은 정수인 스칼라 ID지만, Transformer에 들어가면 D차원 벡터가 된다. 예컨대 한 토큰을 10개의 숫자로 표현하면 10차원 벡터다.
- QKV 생성: 임베딩 벡터에 모델의 가중치를 곱해 Query, Key, Value를 만든다. 입력이 B×S×D인 3차원이어도 B×S를 펼치면 행렬 연산으로 처리할 수 있다. B=5, S=2, D=10이면 앞의 두 차원을 곱한 10×10 행렬로 생각할 수 있다.
2.3. Attention·FFN의 세부 계산과 CNN 비유
-
Self-attention
- 계산 순서: Query와 Key의 내적을 행렬곱으로 계산하고 softmax를 적용한 뒤 Value를 다시 곱한다.
- 멀티헤드: 생성된 QKV를 여러 head로 나누고, 16개 head라면 16조각에서 self-attention을 수행한 뒤 다시 이어 붙이는 head merge를 한다. 이어 가중치를 한 번 더 곱해 다음 블록으로 보낸다.
-
FFN과 잔차 경로
- 두 선형층: attention 결과는 residual connection 같은 후속 연산을 거쳐 FFN으로 간다. FFN은 대략 두 개의 linear layer에서 가중치를 두 번 곱하는 구조다.
- Gate 추가: 최근 구조에는 gate가 추가되어 더 복잡해졌지만, 한 토큰 벡터 내부의 숫자들 사이에서 작동하는 2층 신경망으로 이해할 수 있다.
-
무엇과 무엇의 관계를 계산하는가
- Attention: 각 토큰의 Query가 모든 Key와 내적해 토큰 사이의 관계를 학습한다. 즉 토큰 간 연산이 attention이다.
- FFN: 하나의 토큰을 구성하는 벡터 차원 사이에서 연산한다. CNN의 depthwise convolution처럼 공간 방향 연산과 채널 방향 연산이 분리된 구조로 볼 수 있다.
- 전역성: CNN은 공간 방향에서 3×3 같은 고정 영역만 보지만, causal attention은 미래를 보지 않으면서 첫 토큰부터 마지막 토큰까지 전역적으로 참조한다. 이런 일반성이 스케일을 키울수록 성능이 좋아지는 Transformer의 강점이다.
-
이해에 필요한 수준
- 직관 보조: 큰 행렬 연산을 3차원 그래픽으로 보고 싶다면 3Blue1Brown의 선형대수 영상을 참고할 만하다.
- 실무적 최소선: Transformer 논문과 PyTorch 코드를 줄 단위로 이해하면 구조가 자연스러워지지만, 당장은 attention 블록과 FFN 블록이 있고 이 둘이 무거운 계산을 한다는 골격만 잡아도 이후 경제성과 하드웨어 논리를 따라갈 수 있다.
3. KV Cache와 메모리 용량 문제
디코드가 앞선 문맥을 매번 처음부터 다시 계산하지 않도록 각 레이어의 Key와 Value를 저장하는 KV Cache가 필요하며, 긴 문맥과 에이전트 반복 호출은 계산보다 캐시 보관을 더 어려운 문제로 만든다.
3.1. KV Cache의 의미
-
문맥 기억
- 프리필에서 생성: 초기 프롬프트를 프리필할 때 각 토큰의 Key와 Value를 계산해 메모리에 저장한다. 2,000자 뉴스 기사를 입력했다면 그 앞선 2,000자의 KV가 캐시에 남는다.
- 디코드에서 재사용: 다음 토큰을 만들 때 새 토큰의 Query는 필요하지만 이전 토큰들의 Key와 Value는 모두 필요하다. KV는 과거 대화의 기억처럼 작동한다.
- 재계산과 저장의 선택: 매번 다시 계산할 수도 있지만, 이미 한 번 계산한 KV를 메모리에 저장해 불러오는 편이 대부분 유리하다. API 요금제에서 캐시가 유지되는 시간과 cache hit 가격을 알려주는 이유도 이 비용 구조 때문이다. 캐시 hit에는 약 10분의 1 수준의 큰 할인이 붙을 수 있다.
-
저장량 공식
- 구성 요소: 토큰당 KV 바이트는 K와 V 두 개를 뜻하는 2, attention 레이어 수 N, KV head 수, head dimension, 데이터 타입 바이트 수를 곱해 계산한다.
- GQA의 절감: Llama 3.1은 일반적인 multi-head attention 대신 GQA(grouped-query attention)를 쓴다. 예컨대 8개 Query head가 하나의 Key와 하나의 Value를 공유하므로 KV head 수가 줄어든다.
- Llama 3.1 70B 수치: BF16 또는 FP16은 원소당 2바이트이며, Llama 3.1 70B의 KV 저장량은 토큰당 약 320KB다. 128K(128,000) 문맥을 한 사용자에게 유지하려면 약 40GB가 필요하고, H100 한 장의 80GB 중 절반을 한 사용자가 차지한다. 1T 모델이면 규모가 훨씬 커진다.
3.2. 모델별 용량과 동시 사용자 수
-
KV가 모델 가중치보다 커지는 지점
- 가중치 기준: Llama 3.1 70B의 BF16 가중치는 약 141GB다.
- 문맥 임계점: 배치 1에서 약 431,000토큰에 도달하면 KV 용량이 141GB 가중치를 넘어선다.
- 배치 효과: KV는 사용자별로 생기므로 배치가 커질수록 B×S가 커지고, 가중치보다 훨씬 적은 토큰 수에서도 KV가 더 커진다.
-
극단적인 서비스 규모
- 128K·배치 512: 128K 문맥에서 512명을 동시에 서비스하면 KV만 약 22TB가 된다.
- Llama 3.1 405B·배치 32: H100으로 Llama 3.1 405B를 32명에게 서비스할 때 저장 용량만 나눠도 GPU 약 27장이 필요하다. 실제 배치는 8의 배수로 구성하는 경우가 많으므로 약 32장이 필요하다.
- 사용자의 걱정과 엔지니어의 일: 캐시가 사라지면 다시 프리필해야 하고 비용이 늘지 않겠느냐는 걱정까지 모두 계산하면 사용이 피곤해진다. 일반 사용자는 캐시가 유지된다고 생각하고, 캐시 만료·재계산·보관 정책은 추론 엔지니어링에 맡기면 된다.
3.3. KV 용량을 줄이는 방법
-
모델과 숫자 표현 축소
- 작은 모델: 모델 자체를 줄이면 가중치와 KV가 함께 줄어든다.
- 양자화: 8비트 이하로 내려가며 최근에는 기존 표준에 정식 등록되지 않은 4비트 부동소수점 형식인 MXFP4와 NVFP4도 사용된다.
-
Attention 구조 변경
- GQA·MQA·MLA: GQA는 여러 Query head가 하나의 KV를 공유하고, MQA(multi-query attention)는 16개 Query가 하나의 Key·Value를 공유한다. DeepSeek의 MLA는 하나의 KV로 통합한 뒤 latent vector로 더 압축한다.
- Sliding-window attention: 첫 토큰부터 끝까지 보는 대신 정해진 창 주변의 토큰만 본다. CNN과 비슷한 방식이며 성능 손실을 줄이기 위해 전체 attention과 sliding window를 번갈아 쓰는 하이브리드가 일반적이다.
-
계층형 저장과 오프로딩
- 외부 메모리 활용: KV가 HBM에 다 들어가지 않으면 Mooncake 같은 시스템이 CPU 메모리나 SSD로 옮겼다가 필요할 때 다시 읽는다.
- 에이전트의 압력: 에이전트가 긴 시간 실행되며 생성하는 KV는 과거 reasoning 모델과 비교할 수 없을 만큼 많다. 사용자가 작업을 걸어두고 다른 일을 하다가 “다 끝났네”라고 돌아오는 동안 비싼 HBM에 모든 KV를 보관할 수 없다.
-
새 칩이 감당할 수 있는가
- 기존 칩의 가정: 과거에는 KV 공간이 지금처럼 풍부해질 것으로 예상하지 않아 이미 제작된 추론 칩에 새로운 KV 구조가 고려되지 않았을 수 있다.
- 신규 설계: 새로 나오는 칩은 KV 압축·이동·대규모 메모리 사용을 더 많이 고려해 설계된다.
4. Arithmetic Intensity와 Roofline 분석
AI 반도체 성능은 메모리에서 데이터를 읽는 속도와 읽은 데이터를 연산하는 속도의 상대 관계로 결정되며, Arithmetic Intensity는 데이터 1바이트를 읽고 몇 번 연산하는지를 나타낸다.
4.1. 메모리·연산 병목의 기본
-
두 속도의 경쟁
- 단순한 A+B: 메모리에서 A와 B를 읽고 더해 C를 만든 뒤 C를 다시 메모리에 저장한다. 실제 하드웨어는 A+B를 계산하는 동안 다음 C+D도 읽어 파이프라인을 채운다.
- 병렬 반복: AI는 같은 연산을 엄청난 횟수로 병렬 수행하므로, GPU·NPU가 초당 몇 연산을 할 수 있는지와 메모리가 초당 얼마를 공급할 수 있는지가 병목을 결정한다.
-
H100과 Ridge Point
- 하드웨어 수치: H100은 BF16 기준 약 1PFLOP/s, 즉 약 1,000TFLOP/s의 연산을 할 수 있고, 메모리 대역폭은 약 3.35TB/s다. BF16 원소가 2바이트라는 점을 적용하면 두 능력이 균형을 이루는 지점은 대략 300, 다른 계산 표기에서는 약 295다.
- Ridge point: 연산과 메모리 중 어느 쪽도 상대적으로 느리지 않은 균형점이 ridge point다. 모델의 수치가 아니라 하드웨어의 연산 능력과 대역폭으로 정해진다.
-
Arithmetic Intensity의 예시
- 4×4 행렬: 4토큰 벡터와 4×4 가중치를 곱할 때 가중치 W11 하나는 네 번 재사용된다. 메모리에서 W11을 한 번 읽고 네 번 연산하므로 Arithmetic Intensity가 4다.
- MAC 계산: 곱셈 뒤 덧셈이 이어지는 dot product에서는 곱셈과 덧셈을 각각 세어 한 쌍을 2연산으로 잡기도 하지만, 여기서는 1회냐 2회냐보다 재사용 순서와 비율이 중요하다.
- 에너지 차이: 곱셈·덧셈 한 번과 비교하면 칩 내부 SRAM, HBM, DDR에서 데이터를 읽는 에너지는 4~5자릿수만큼 크게 다르다. 저전력 설계의 핵심은 메모리 읽기·쓰기 횟수를 줄이는 것이다.
4.2. Roofline에서 프리필과 디코드의 위치
-
그래프의 구성
- 평평한 선: y축은 반도체의 최대 연산 성능이며 H100의 약 1,000TFLOP/s가 수평선의 높이를 정한다.
- 기울어진 선: log-log 그래프에서 기울기 1인 선의 y절편은 메모리 대역폭이다. 대역폭이 커지면 선이 위로 올라가 ridge point가 왼쪽으로 이동하고, 연산량만 늘리면 수평선이 위로 이동한다.
-
Compute-bound와 Memory-bound
- 오른쪽 영역: Arithmetic Intensity가 ridge point 오른쪽이면 compute-bound다. 한 번 읽은 가중치로 100만 연산을 해야 하는 프리필은 ridge point 295보다 훨씬 오른쪽에 있어 계산 유닛이 병목이 된다.
- 왼쪽 영역: 디코드는 메모리에서 읽은 뒤 한 번의 연산만 하므로 Arithmetic Intensity가 1에 가깝다. 데이터가 공급되는 속도에 묶여 memory-bound가 되고 성능이 크게 떨어진다.
- 최적화 방향: 프리필은 컴퓨트 유닛을 늘릴 여지가 있지만 디코드는 벡터-행렬 곱으로 구조적으로 낮은 intensity를 가진다. 따라서 디코드 지점을 오른쪽으로 옮겨 하드웨어를 더 활용해야 한다.
-
배칭의 효과와 한계
- 비-attention 연산: 여러 사용자의 디코드 토큰을 모아 행렬곱하면 배치 크기가 커져 Arithmetic Intensity가 증가한다. 디코드의 3차원 입력도 배치와 토큰 길이를 합쳐 2차원처럼 만들 수 있다.
- Attention의 예외: 사용자마다 KV가 다르므로 한 사용자의 Query와 KV 행렬을 다른 사용자가 공유할 수 없다. 여러 배치를 묶어도 attention의 intensity는 1에 머무는 병목이 생긴다.
4.3. Attention을 오른쪽으로 이동시키는 기법
-
KV 공유
- GQA: 8개의 Query가 한 KV를 공유하면 intensity가 1에서 8로 증가한다.
- MQA와 MLA: MQA는 16개 Query 전체가 하나의 Key와 Value를 공유하고, MLA는 그 KV까지 압축해 같은 대역폭으로 더 많은 유효 데이터를 읽는다.
-
Prefix caching과 KV 양자화
- 고정 시스템 프롬프트: ChatGPT나 Claude에는 사용자가 보지 못하는 시스템 프롬프트와 도구 정보, 주의사항이 앞에 붙는다. 모든 요청에서 같은 접두부의 KV를 미리 계산해 공유하는 것이 prefix caching이다.
- 8비트·4비트 KV: KV 자체를 8비트나 4비트로 양자화하면 같은 대역폭으로 더 많은 KV를 읽어 attention의 부담을 낮출 수 있다.
5. 인터랙티비티·처리량·InferenceX 벤치마크
하드웨어의 “몇 퍼센트 더 빠르다”라는 단일 숫자보다 사용자 한 명의 속도와 GPU당 전체 처리량을 함께 그린 Pareto 곡선이 실제 서비스 수익성을 더 잘 보여준다.
5.1. 두 가지 서비스 지표
-
Interactivity
- 정의: 한 사용자가 초당 몇 토큰을 받는지가 interactivity다. 사용자가 체감하는 응답 속도와 같다.
- 높은 사용자 속도의 비용: Anthropic의 fast mode처럼 일반 모드보다 2.5배 빠른 서비스를 6배 가격에 판매하는 것은 단일 사용자의 속도를 높일 때 전체 처리량이 희생되기 때문이다.
-
Throughput
- 정의: 여러 사용자에게 보내는 모든 토큰을 합산한 뒤 GPU 수로 나눈 GPU당 초당 토큰 수다. 한 사용자에게 가든 100명에게 나뉘어 가든 합계로 계산한다.
- McMorning 비유: 출근길 McDonald's에서 McMorning을 주문하고도 오래 기다린 이유는 직원이 여러 주문의 빵을 한꺼번에 깔아 처리량을 높였기 때문이다. 먼저 주문한 한 사람의 interactivity는 나빠졌지만, 매장의 throughput은 좋아졌다.
5.2. SemiAnalysis의 Pareto 곡선
-
그래프의 축과 점
- 축: x축은 interactivity로 오른쪽일수록 사용자 토큰 속도가 빠르고, y축은 throughput이다. 텐서 병렬성(TP), 전문가 병렬성(EP), 파이프라인 병렬성(PP), 데이터 병렬성(DP), 배치 크기와 소프트웨어 설정을 바꿔 수많은 실험점을 만든다.
- 정규화: 여러 GPU를 사용하더라도 GPU 수로 나누므로 100 GPU를 쓴 구성도 비교 가능한 좌표가 된다.
- Pareto frontier: 오른쪽 위의 지배적인 점들을 연결한 곡선이 InferenceX의 핵심 그래프다. 이 곡선 위쪽으로는 갈 수 없다.
-
곡선의 의미
- 오른쪽: 배치가 작고 동시에 서비스하는 사용자가 적어 한 사람의 속도가 빠르다.
- 왼쪽: 배치가 커지고 GPU가 더 많은 사람에게 토큰을 만들지만, 개별 사용자는 느려진다. 사용자 수가 10명이면 각자의 KV를 10배 읽어야 하고, 100개 레이어라면 이 부담을 100번 반복한다.
- 교차 가능성: 좋은 throughput 영역에서 강한 하드웨어가 작은 배치에서도 항상 좋은 것은 아니다. 하드웨어와 소프트웨어 특성에 따라 곡선이 교차하고, vLLM과 SGLang, 병렬성 설정에 따라서도 결과가 달라진다.
-
실제 구매·수익 모델링
- 요구조건 비교: 서비스가 사용자에게 최소 100토큰/초를 요구하면 x축 100 지점에 수직선을 긋고 그 지점의 throughput을 비교하면 된다.
- 투자 회수 계산: GPU 수와 처리량, 사용자 가격을 결합하면 필요한 수요, 투자 회수 기간, 클라우드의 수익·손실을 역산할 수 있다. SemiAnalysis는 이 방식으로 프런티어 랩의 매출과 토큰 마진을 추정한다.
- 시장 정보 사업: SemiAnalysis는 투자를 받지 않고도 크게 수익을 내며, 프런티어 랩의 2~3년 뒤 경제성과 투자 대비 곡선을 전 세계 기업에 보고서로 판매한다. ICML에서 HyperAccel과 만났고, 2026년 7월 Lablup에서 AI Frontier와 SemiAnalysis 파티·교류 행사도 열었다.
-
LPU의 Roofline 효과
- 그래프의 변화: Jensen Huang은 GTC에서 LPU를 쓸 때 곡선의 오른쪽, 작은 배치 영역의 성능이 덜 떨어지고 평평하게 유지되는 모습을 보여줬다. 높은 대역폭이 디코드에 유리하기 때문이다.
- 일반 독해법: Roofline과 Pareto 곡선의 의미를 알면 NVIDIA나 칩 회사가 새 벤치마크를 공개할 때 어떤 병목을 해결했다는 뜻인지 읽을 수 있다.
6. 추론 서빙 소프트웨어의 스케줄링
사용자 요청은 무작위로 들어오므로, 같은 GPU와 모델을 써도 vLLM·SGLang 같은 서빙 프레임워크의 배칭·메모리 관리·우선순위 정책에 따라 수익성이 크게 달라진다.
6.1. Static batching에서 Iteration-level scheduling으로
-
정적 배칭의 낭비
- 요청 단위 대기: 네 요청이 동시에 왔다고 가정하면 파란 프리필과 빨간 디코드를 하나의 배치로 묶는다. 네 요청 중 가장 긴 요청이 끝날 때까지 다음 요청을 받지 못한다.
- 빈 슬롯: 먼저 끝난 요청의 뒤쪽 영역이 비어 있어도 GPU가 놀게 된다. ChatGPT 관점에서는 빈 자리가 모두 돈 낭비다.
-
Orca와 vLLM식 연속 배칭
- 논문과 계보: 서울대학교 Byung-Gon Chun 교수 연구실의 Orca 논문은 요청 단위가 아니라 iteration 단위로 재스케줄링하자는 발상을 제시했다. Chun 교수는 FriendliAI도 창업했다.
- 한 토큰마다 재평가: 프리필이 끝난 뒤와 디코드 토큰 하나가 생성된 뒤마다 큐를 다시 보고, R2가 끝나면 다음 iteration에 R6을 받아 프리필을 시작한다.
- 프리필·디코드 혼합: QKV와 FFN은 프리필·디코드에서 같은 가중치를 곱하므로 함께 처리할 수 있다. 차이는 attention이며, 배치별 KV를 분리해 처리하면 된다. 프리필은 1,000 Query일 수 있고 디코드는 1 Query일 뿐이다.
- 시간 간격의 차이: 도식의 각 칸이 같은 길이로 그려져도 긴 프리필은 더 오래 걸리고, 디코드가 먼저 끝나 칸의 길이가 달라질 수 있다.
-
가득 채운 버스 비유
- 배차 최적화: 빈 버스를 줄이고 사람을 가득 태워 보내는 문제는 McDonald's 햄버거, 고속버스터미널, KTX 좌석을 채우는 문제와 같다.
- Amortization: 컴퓨팅의 전통적인 최적화처럼 고정 비용을 여러 토큰·사용자에게 나눠 부담시키며 하드웨어 활용률을 높이는 것이다.
6.2. PagedAttention과 동적 메모리
-
미리 최대치를 잡는 문제
- 출력 길이 불확실성: ChatGPT·Claude·Gemini가 몇 토큰을 출력할지 미리 알 수 없으므로 최장 답변을 기준으로 KV 메모리를 한 번에 예약하면 짧은 “Hello” 요청의 나머지 공간이 낭비된다.
- 은행 준비금 비유: 모든 예금자가 한꺼번에 돈을 찾을 최악의 경우를 대비해 전부 준비하면 비효율적이다. 실제로는 대부분 최악의 양을 쓰지 않으므로 더 많은 사용자를 받는 것과 같다.
-
페이지 테이블 방식
- 동적 할당: 출력 첫 단어가 Alan이면 물리 메모리의 7번 블록에 KV를 할당하고, 한 페이지가 네 단어를 담는다고 하자. Turing을 옆에 저장하고 computer까지 저장하면 페이지가 가득 차 새 페이지를 할당한다.
- 가상-물리 연결: 논리 블록 0이 물리 블록 7, 논리 블록 1이 물리 블록 1, 논리 블록 2가 물리 블록 3에 연결될 수 있다. 현재 페이지에 한 칸만 찼다면 남은 세 칸을 기록해 다음 공간을 동적으로 배정한다.
- 효과와 예외: 실제 필요한 만큼만 메모리를 써 더 많은 사용자를 서비스할 수 있다. 다만 모든 사용자가 최대 길이 출력을 내면 메모리가 부족해져 KV를 축출했다가 다시 읽어야 하는 최악의 경우가 생긴다.
6.3. Prefix caching과 Chunked prefill
-
Prefix caching
- 공유 가능한 접두부: 모든 요청에 공통인 시스템 프롬프트·도구 설명·안전 지침의 KV를 미리 만들어 저장한다.
- 재사용 효과: 요청마다 같은 접두부를 다시 계산하지 않아 읽기와 프리필 비용을 줄인다.
-
Chunked prefill
- 디코드 끊김: 8,192토큰 프리필이 한꺼번에 들어오면 ridge point가 약 300인 하드웨어에서 여러 iteration을 거쳐야 하므로 디코드가 잘 진행되다가 갑자기 멈출 수 있다.
- 조각내기: 프리필을 같은 크기의 여러 chunk로 나누어 버스에 태운다. 긴 프리필이 디코드 전체를 막지 않도록 한다.
- 우선순위: 디코드가 항상 먼저 들어가고, 그다음 이전에 시작했지만 버스에 타지 못한 프리필, 마지막으로 새로 도착한 프리필 순서로 처리한다.
- 트레이드오프: TBT를 낮춰 답변 중간의 끊김을 줄이는 대신 프리필의 첫 토큰이 나오는 TTFT를 조금 희생한다. 서비스 품질을 일정하게 만드는 데 필요한 방법이다.
6.4. Speculative decoding
-
기본 아이디어
- 순차성 완화: 원래 디코드는 한 번에 한 토큰을 생성하지만, 작은 draft model이 빠르게 여러 토큰을 제안하고 큰 원본 모델이 이를 한 번에 검증한다.
- 모델 크기: draft model은 원본의 대략 100분의 1 크기이며, 여덟 토큰을 순차적으로 빠르게 만든 뒤 큰 모델의 프리필처럼 여덟 토큰을 병렬 검증한다.
-
검증 과정
- 병렬 예측: “the” 다음 “cat”, 그다음 “sat”, “on” 같은 후보를 각 위치에서 동시에 예측한다. 큰 모델은 앞선 문맥과 draft 토큰을 함께 넣어 각 위치의 답을 검증한다.
- 오류 복귀: “the cat sat on” 중 “mat”이 틀리고 실제가 “bench”라면 bench까지 맞았다고 인정한 뒤 draft model로 돌아가 그 뒤 여덟 토큰을 다시 제안받는다.
- 같은 모델의 조기 종료: 100개 레이어 모델을 매번 모두 통과할 필요가 없다는 관찰도 있다. 50개 레이어까지만 가도 70%를 맞히고, 70개 레이어면 거의 모두 맞히는 통계를 이용해 중간 LM head로 빠른 예측·검증을 수행한다. Meta가 이런 연구를 발표했다.
-
DSpark와 EAGLE-3
- DSpark: DeepSeek의 DSpark는 diffusion transformer처럼 여러 토큰을 한꺼번에 만드는 구조를 draft model로 사용한 뒤 원본 모델이 검증한다.
- EAGLE-3: EAGLE-3도 본질적으로 speculative decoding을 수행하는 모델이다.
- 핵심 경제성: 프리필이 디코드보다 싸기 때문에 작은 모델의 빠른 디코드를 큰 모델의 저렴한 프리필 검증으로 바꿔 토큰당 전력·GPU 비용을 낮춘다.
-
검증량과 품질의 조절
- 자원 적응: 여덟 후보 중 앞의 네 개만 맞고 뒤 네 개가 틀릴 수 있다. 컴퓨트가 부족할 때는 마지막 두 개를 빼고 여섯 개만 검증해 쓸데없는 연산을 줄인다.
- 확률적 토큰: “Hello”와 “Greetings”가 모두 문맥상 맞을 수 있으므로 최고 확률 토큰만 정답으로 취급할 필요는 없다. 일정 확률 임계치를 넘는 후보를 통과시키면 눈에 띄는 품질 손실 없이 토큰 수를 늘릴 수 있다.
- 재사용되는 최적화 원리: PagedAttention, speculative decoding, compute-bound와 memory-bound 사이의 이동은 CPU·운영체제에서 쓰던 캐시·스케줄링·분할 최적화 원리가 LLM과 GPU에 재적용된 사례다. 오래된 컴퓨터 과학을 잘 알수록 새 최적화를 이해하기 쉽다.
7. Prefill-Decode Disaggregation
프리필과 디코드는 Roofline에서 멀리 떨어진 서로 다른 작업이므로, 하나의 GPU 풀에서 섞지 않고 전용 풀로 나누면 엄격한 서비스 목표를 만족하는 처리량(goodput)을 높일 수 있다.
7.1. 두 풀과 Token Factory
-
분리의 이유
- 간섭 문제: 프리필이 들어올 때마다 디코드가 영향을 받으며, 디코드만 우선하면 프리필 TTFT가 나빠진다. Chunked prefill도 이 간섭을 완화할 뿐 본질을 없애지는 않는다.
- PD disaggregation: 프리필만 하는 prefill pool과 디코드만 하는 decode pool을 만들고, 각 작업에 맞는 SLO를 만족하도록 배치한다.
-
Token Factory 비유
- 컨베이어 벨트: Jensen Huang이 말하는 Token Factory는 자동차 공장에서 한 사람이 바퀴를 조립하고 다른 사람이 문을 다는 것처럼, 프리필과 디코드를 단계별 전용 풀로 나누는 발상이다.
- KV 전송: 프리필 풀에서 만든 모든 KV를 디코드 풀로 보내야 하므로 두 풀 사이의 네트워크 속도와 인터커넥트가 매우 중요하다.
7.2. Goodput의 증가 조건
-
Raw throughput과 Goodput의 차이
- 연산량 불변: 같은 GPU 100대를 어떤 비율로 프리필·디코드에 나눠도 모두 100% 활용되고 필요한 연산량이 같다면 총 생성 토큰 수(raw throughput)는 늘지 않는다.
- 서비스 목표 충족: 적어도 초당 30토큰을 내야 한다는 요구를 만족하는 처리량, 즉 goodput은 크게 증가한다. 느린 프리필이 디코드를 막지 않아 SLO를 지키는 토큰이 늘기 때문이다.
- Splitwise: Microsoft의 Splitwise 논문은 같은 H100을 사용하면서 prefill 인스턴스 수를 바꿔 규모별 효과를 분석했다.
-
효과가 큰 조건
- 긴 입력·짧은 출력: 프리필 비중이 커서 디코드에 미치는 간섭이 클수록 분리 효과가 크다.
- 엄격한 SLO: “반드시 이 속도를 충족해야 한다”는 요구가 강할수록 disaggregation이 유리하다.
- 고대역폭 연결: 풀 사이에서 KV를 옮겨야 하므로 충분히 빠른 인터커넥트가 필요하고, 규모가 작으면 효과가 제한적이다.
-
효과가 작은 조건
- 작은 규모: 작은 시스템에서는 단순한 chunked prefill이 더 유리할 수 있다.
- 느린 인터커넥트: NVIDIA GPU는 NVLink 같은 고속 네트워크 덕분에 잘 작동하지만, 인터페이스가 느린 AI 반도체에서는 분리 이득이 예상보다 작다.
8. Agentic AI가 바꾸는 메모리 경제
챗봇의 한 번의 응답을 넘어 에이전트가 긴 세션 동안 여러 요청과 도구 호출을 반복하면, 병목은 연산량보다 “사용자가 돌아올 때까지 무엇을 기억해 둘 것인가”로 이동한다.
8.1. Session·Request·Step 구조
-
용어 정의
- Session: 사용자가 에이전트를 시작한 순간부터 에이전트가 완전히 끝날 때까지다.
- Request: 세션 안에서 사용자가 프롬프트를 입력하고 에이전트가 LLM과 도구를 호출해 결과를 낸 한 작업이다. 사용자가 결과를 보고 다음 작업을 주면 새 request가 된다.
- Step: 한 request 안에서 LLM이나 도구가 한 번 호출될 때마다 한 step이다.
-
관측된 규모
- 세션 시간과 반복: 평균 session은 62.6분이고 세션당 request는 약 9.2개다. request마다 약 9 step이므로 세션 하나에 대략 100 step이 들어간다.
- AI가 AI를 호출: 실제 LLM 호출의 약 90%는 사람이 아니라 에이전트가 시작한다. 사람은 첫 프롬프트에서 한 번 호출하지만, 에이전트는 loop 안에서 계속 LLM을 부른다.
- 분석 자료: 2026년 8월 공개된 논문은 2026년 6월 한 달간 Copilot의 모든 trace를 분석했고, TraceLab 같은 자료도 에이전트 워크로드를 분석한다.
8.2. Prefix 재읽기와 Heavy tail
-
한 step의 토큰 구성
- 압도적인 prefix: LLM 호출 한 번에 앞서 누적된 KV를 읽는 prefix가 약 119,000토큰이고 새로 추가된 토큰은 875개, 출력 토큰은 214개다. 새 출력의 약 100배에 가까운 입력을 다시 읽는 셈이다.
- 추론의 반복 확대: reasoning 모델이 만든 긴 thinking token이 각 step의 문맥에 붙고, 에이전트가 여러 step을 반복하면서 KV 공간과 재읽기 비용이 곱셈처럼 커진다.
-
긴 꼬리 분포
- 최악 사례의 중요성: agent workload는 heavy-tailed라서 평균적인 경우만 보고 설계하면 서비스가 실패한다. 꼬리의 최악 사례가 전체 장애를 만든다.
- 중앙값과 평균: 중앙값과 평균이 최대 15배까지 벌어질 수 있어, 일반적인 세션만으로 용량을 잡을 수 없다.
- 요일 효과: 평일에는 세션 수가 많고, 주말에는 세션 수가 적지만 세션당 반복 횟수가 훨씬 많다. 주말에 복잡한 일을 걸어두고 집에 가거나 잠드는 사용 패턴이 반영된 것으로 볼 수 있다.
8.3. 사람이 메모리 병목이 되는 이유
-
세션의 대부분은 대기
- 시간 비중: 사람은 세션의 약 92%를 차지하고, 도구 호출은 4.8%, LLM은 3.3%를 차지한다. LLM과 도구를 합쳐도 약 8%이며 사람의 판단·대기가 92%다.
- 비연속 사용: 사용자는 에이전트에 일을 시킨 뒤 다른 에이전트를 쓰거나 다른 일을 하다가 돌아와 “다 됐나?” 하고 결과를 확인한다. 계속 화면을 지켜보지 않는다.
-
HBM 보관의 낭비
- 재방문 간격: request 사이에 사람이 기다리는 시간의 중앙값은 25분이다. 그동안 앞서 생성한 KV를 비싼 HBM에 유지하는 것은 낭비다.
- 캐시 크기: 이 대기 동안 유지되는 KV 중앙값은 약 40GB다.
- Golden time: 사용자 재방문 가능성이 높은 5~10분까지는 HBM에 두고, 그 이후에는 저장장치로 내보내는 정책이 합리적이다.
-
재방문 예측
- 경량 모델: 가벼운 머신러닝 모델로 사용자가 10분 안에 돌아올지, 곧 돌아오지 않을지를 예측해 후자라면 빨리 KV를 축출한다.
- 분류 가능성: 정확히 몇 분 뒤 돌아올지 맞히기는 어렵지만, 곧 돌아올 사람과 그렇지 않은 사람의 이진 분류는 예상보다 잘 맞는다. 사용자별 학습인지 콘텐츠 기반인지에 따라 설계할 수 있다.
- 추가 특징: 잠들기 전 긴 작업을 걸었는지, 실행 시각과 작업 종류가 무엇인지 분류하면 정확도가 크게 좋아질 수 있다.
8.4. KV 재계산보다 저장장치 재읽기가 유리한 이유
-
비용 구성
- Prefix 비용: 클라우드 임대 가격을 기준으로 보면 비용의 약 60%가 prefix를 읽는 데 쓰인다.
- 두 선택지: KV를 완전히 버리고 사용자가 돌아왔을 때 다시 계산하거나, CPU DRAM·SSD 같은 먼 메모리로 보내뒀다가 읽어 올 수 있다.
-
계층형 메모리 설계
- 재읽기의 우위: 대부분의 경우 재계산은 오래 걸리고 비싸므로 저장장치에서 읽어 오는 편이 낫다. 읽는 동안 일부 계산을 병렬로 수행해 지연을 완전히 숨길 수도 있다.
- 계층: SRAM, HBM, DDR, SSD, 고대역폭 플래시를 계층별로 배치하고 KV 중간 결과를 언제 어느 계층으로 보낼지, 언제 다시 가져올지 스케줄링해야 한다.
- 소프트웨어의 기회: vLLM과 SGLang처럼 이 정책을 잘 다루는 오픈소스 도구가 더 많이 등장할 것이다.
-
병목의 이동
- 순환하는 제약: 병목은 연산에서 메모리로, 메모리에서 전력으로 계속 이동한다. 한 영역의 병목이 해결되면 다른 영역이 나타나고, 시스템은 그때마다 다른 수단으로 대응한다.
- 컨텍스트 압축: 에이전트 workflow에서 context를 압축하면 최종 압축 KV만 남기고 이전 것은 버릴 수 있다. 압축 과정에서 정보가 손실되면 일부를 다시 계산해야 한다.
- 서비스 가격 차이: 어떤 클라우드는 Opus 1M처럼 100만 토큰 문맥을 제공하고, 다른 클라우드는 27만 토큰만 제공한다. 서로 다른 규모의 메모리 팜을 운영하므로 가격 구조도 달라진다.
9. 이기종 추론 하드웨어와 AI 설계 자동화
모든 작업을 한 종류의 GPU가 처리하는 시대에서 벗어나, 각 하드웨어가 잘하는 구간을 추론 파이프라인에 꽂는 이기종(heterogeneous) 컴퓨팅으로 이동한다.
9.1. 전문 칩의 분업
-
시장 다변화
- 대체 후보: 현재 추론에서 NVIDIA GPU가 가장 많이 쓰이지만 Groq, Cerebras, TPU, 중국산 칩 등 다양한 하드웨어가 시장에 들어와 큰 비중을 대체할 수 있다.
- 중국산 추론 사례: GLM-5.3 Flash가 추론 전체를 중국산 칩으로 실행했다는 소식도 등장했다.
-
Vera Rubin·Groq·LPX 조합
- Roofline 차이: Vera Rubin과 Groq를 같은 Roofline 그래프에 놓으면 Groq 쪽은 낮은 Arithmetic Intensity 영역에서 더 높은 대역폭으로 유리한 구간을 갖는다. InferenceX가 포착한 오른쪽 영역과도 겹친다.
- LPX의 역할: Vera Rubin 계열의 LPX는 disaggregation과 결합해 Rubin GPU가 프리필과 attention 디코드를 수행하고, Groq LPX가 FFN을 담당하는 구조다. LPX의 ridge point는 약 8로 한 자릿수라 낮은 intensity에서 강하다.
- KV가 없는 FFN: Groq는 약 500MB의 SRAM만 사용하므로 모든 KV를 담기 어렵지만, FFN에는 KV가 필요하지 않아 이 역할에 적합하다. GPU와 LPU 사이에는 KV가 아니라 토큰만 오가므로 전송량도 작다.
- MoE의 추가 이점: MoE에서는 배치가 전문가별로 나뉘어 단일 expert 관점의 배치가 작아진다. FFN이라도 Arithmetic Intensity가 낮게 남아 Groq의 강점이 유지된다.
9.2. Homogeneous computing 이후
-
파이프라인에 맞춘 조합
- 외부 메모리 결합: 에이전트 AI에 맞춰 외부 메모리에서 데이터를 매우 빠르게 읽거나 칩 가까이에 초대형 메모리를 붙인다면 KV를 그곳에 저장한 채 계산을 진행할 수 있다.
- 이기종 표준화: 각 칩의 장점을 추론·서빙 파이프라인에 맞춰 연결하는 heterogeneous world가 온다. 모든 일을 하나의 GPU가 처리하는 homogeneous computing은 끝나간다.
- HyperAccel의 다음 제품: Bertha가 가격과 전력을 주요 병목으로 보고 설계됐다면, 다음 제품은 agentic AI의 메모리·반복·대기 특성에 맞는 방향으로 준비되고 있다.
-
전문 하드웨어의 춘추전국시대
- 작업 분해: LLM이라는 하나의 작업도 trade-off에 따라 Groq, GPU, Cerebras 등으로 쪼갤 수 있다.
- CPU·GPU 역사 비유: CPU만 있던 시절 게임용 GPU가 등장한 것처럼, 특화 하드웨어가 차례로 등장해 한 GPU가 하던 일을 나눠 맡는다. 이를 “Warring States period”라고 부를 수 있다.
9.3. AI가 칩 설계를 맡는 시점
-
검증 가능한 설계 작업
- 3년 전망: Jinwon Lee는 습관처럼 “약 3년 뒤에는 내가 이 일을 못할 것 같다”고 말한다. AI가 자신보다 훨씬 잘할 것이라고 보기 때문이다.
- FPGA와 검증: FPGA 기반으로 이미 예상보다 잘 작동하는 연구와 논문이 나왔고, 특히 설계가 제대로 작동하는지 확인하는 verification은 소프트웨어 영역이라 자동화 가능성이 높다.
-
하드웨어 특유의 난점
- RTL·Verilog: 설계는 RTL·Verilog로 코딩하지만 하드웨어를 의식한 코딩이 필요하다. 어떤 결과가 좋은지 평가 기준도 작업마다 달라 단순한 소프트웨어 생성보다 어렵다.
- 물리 구현: 설계·검증만으로 끝나지 않고 트랜지스터 수준의 layout, P&R(place and route), 실제 물리 동작까지 맞아야 한다. 여러 복잡한 문제가 동시에 풀려야 제대로 작동하는 반도체가 나온다.
- 시간 문제: 전체 설계가 한 번에 자동화되지는 않겠지만 평가 지표가 있는 부분부터 자동화될 수 있으며, 완전한 자동화가 먼 미래는 아니다.
-
Codex와 CUDA 커널
- OpenAI 사례: OpenAI는 CUDA 관련 작업을 Codex로 빠르게 만들었다고 말한다.
- MLA 커널: DeepSeek을 실행하려면 MLA 커널이 필요했는데, 원래 커널이 없던 상태에서 Codex가 빠르게 만들어냈다는 사례가 AI 기반 칩·커널 개발의 속도를 보여준다.
주요 발언 모음
“앞으로도 우리는 항상 컴퓨트가 부족한 세계에 살 가능성이 크다.” — Jinwon Lee
“AI 에이전트의 워크로드는 compute-bound가 아니라 압도적으로 memory-bound다. 거의 단순한 기억의 작업이다.” — Jinwon Lee
“프리필과 디코드는 근본적으로 다른 계산 특성을 가지므로, 그 둘을 최적화해 하드웨어에 맞추는 일이 핵심이다.” — Chester Roh
“추론 엔지니어링을 이해하는 목적은 모든 수식을 외우는 것이 아니라 추론 경제성과 엔지니어링 프런티어를 해석할 사고 틀을 갖는 것이다.” — Chester Roh
“사람이 AI를 쓰는 것보다 AI가 AI를 더 많이 호출한다.” — Jinwon Lee
“Homogeneous computing은 거의 끝나가고, 각 하드웨어가 잘하는 일을 찾아 끼워 넣는 세계가 온다.” — Jinwon Lee
“모델만 프런티어를 향해 가는 것이 아니라 인프라도 계속 프런티어를 향해 간다.” — Chester Roh
핵심 데이터 & 수치
- 토큰 수요: GCP 토큰 사용량 12개월 50배, 14개월 100배, 이후 2024년 대비 약 330배.
- 모델 규모: Fable 5 약 8T 파라미터 추정, Mythos 약 10T 파라미터 소문.
- 데이터센터: 2030년까지 약 6.7조 달러 투자, 한국 2035년까지 18.4GW·네 개 메가프로젝트.
- 전력: 미국 데이터센터 전력 연결 평균 5년, 수도권 전력 신청 절반 이상 탈락.
- 매출과 컴퓨트: Anthropic 매출 연 10배 성장 대 컴퓨트 연 3배 성장, 간극 연 3.3배.
- Bertha: 삼성 4nm, LPDDR 8개, 대역폭 546GB/s, 칩당 192GB, 목표가 약 5,000달러.
- 대역폭 활용: H100 약 3TB/s 대비 Bertha 명목 대역폭은 약 6분의 1이나 내부 활용률은 90% 이상, 일반 최적화 전후는 약 50%·70%.
- KV Cache: Llama 3.1 70B 기준 약 320KB/토큰, 128K 문맥 약 40GB, H100 80GB의 절반.
- 대형 KV: Llama 3.1 70B 가중치 약 141GB, 배치 1에서 431K토큰에 KV가 이를 초과, 128K·배치 512에서 약 22TB.
- H100 배치: Llama 3.1 405B·배치 32는 저장 용량만 약 27장, 실제 구성은 약 32장.
- H100 Roofline: BF16 약 1PFLOP/s·1,000TFLOP/s, 메모리 약 3.35TB/s, ridge point 약 295~300.
- Agentic AI: 평균 session 62.6분, 9.2 requests/session, 약 9 steps/request, 약 100 steps/session.
- Agent 호출: 실제 LLM 호출의 약 90%가 AI가 시작.
- 토큰 재읽기: prefix 약 119K, 신규 입력 875, 출력 214토큰.
- 세션 시간: 사람 92%, 도구 4.8%, LLM 3.3%이며 request 사이 중앙 대기는 25분.
- 에이전트 KV: 대기 중 KV 중앙값 약 40GB, 5~10분이 HBM 보관의 golden time, prefix 읽기 비용 약 60%.
- 서빙 가격: Anthropic fast mode는 약 2.5배 속도에 약 6배 가격.
- 전문 LPU: Groq SRAM 약 500MB, Groq·LPX 계열의 낮은 Arithmetic Intensity ridge point 약 8.
결론 및 시사점
- 프리필과 디코드를 별개 제품처럼 최적화해야 한다: 프리필은 계산 유닛, 디코드는 메모리 대역폭과 KV 관리가 지배하므로 하나의 평균 벤치마크로 판단하면 안 된다.
- KV Cache가 추론 비용의 중심으로 이동한다: 긴 문맥, reasoning token, 에이전트 반복 호출은 HBM 용량과 재읽기 비용을 키워 양자화·GQA·MLA·prefix caching·PagedAttention·계층형 오프로딩을 필수로 만든다.
- Roofline은 칩 발표를 읽는 공통 언어다: Arithmetic Intensity와 ridge point를 알면 특정 칩이 계산, 대역폭, 배칭, interconnect 중 어느 병목을 해결했는지 해석할 수 있다.
- 처리량과 체감 속도는 함께 비교해야 한다: 단일 사용자의 interactivity를 올리면 throughput이 내려갈 수 있으므로, 서비스 SLO에 맞춰 SemiAnalysis식 Pareto frontier에서 구성점을 골라야 한다.
- 서빙 소프트웨어가 하드웨어만큼 중요하다: iteration-level scheduling, PagedAttention, chunked prefill, speculative decoding은 같은 GPU에서도 메모리 낭비와 대기 시간을 줄여 수익성을 바꾼다.
- Disaggregation은 규모와 네트워크가 전제다: 긴 입력·짧은 출력·엄격한 SLO·고속 인터커넥트가 있을 때 prefill pool과 decode pool을 분리해 goodput을 높일 수 있다.
- 에이전트 시대의 핵심은 기억의 보관 시간이다: 사람이 25분 뒤 돌아오는 동안 40GB KV를 HBM에 붙잡아 두는 것은 비싸므로, 재방문 예측과 SRAM·HBM·DDR·SSD 계층 스케줄링이 새로운 인프라 경쟁이 된다.
- 전문 칩이 연결되는 이기종 컴퓨팅이 커진다: Rubin, Groq, Cerebras, TPU, 중국산 칩은 하나의 GPU를 대체하기보다 각자의 Roofline 강점을 조합해 추론 파이프라인을 분할한다.
- AI 기반 칩 설계는 부분 자동화부터 진행된다: FPGA, verification, RTL·Verilog, CUDA·MLA 커널처럼 평가 가능한 작업부터 AI가 빠르게 맡고, layout·P&R·트랜지스터 수준 통합으로 확장된다.
- 추론의 산업화 속도를 계속 추적해야 한다: 불과 1년 전만 해도 새 모델의 훈련법을 이야기했지만 이제는 수익성 있는 클라우드와 토큰 경제성을 계산하는 단계에 들어섰다. NVIDIA의 우위도 각 전문 영역의 공격을 받으며 매달 재편될 수 있다.
핵심 요약 (20줄)
컴퓨트 부족은 훈련과 추론 모두에서 지속되며 AI 인프라의 구조적 제약이 된다. GCP 토큰 사용량은 14개월 만에 100배로 늘었고 이후 2024년 대비 약 330배까지 증가했다. 모델 규모가 수조 파라미터를 넘어 다시 커지면서 데이터센터와 전력 투자가 함께 확대된다. Bertha는 HBM 대신 LPDDR을 사용해 전력과 메모리 비용을 낮추는 데이터센터급 AI 칩이다. 프리필은 여러 토큰을 병렬 처리하고 디코드는 한 토큰씩 순차 생성한다. Attention은 토큰 사이의 관계를 계산하고 FFN은 한 토큰 벡터 내부 차원을 계산한다. KV Cache는 이전 토큰의 Key와 Value를 저장해 디코드가 문맥을 재계산하지 않게 한다. Llama 3.1 70B의 KV는 토큰당 약 320KB이며 128K 문맥에 약 40GB가 필요하다. GQA·MQA·MLA·양자화·sliding window는 KV 용량과 메모리 읽기를 줄이는 핵심 기법이다. Arithmetic Intensity는 메모리에서 읽은 데이터를 재사용해 몇 번 연산하는지를 나타낸다. 프리필은 compute-bound이고 디코드는 낮은 Arithmetic Intensity 때문에 memory-bound가 된다. Roofline의 ridge point는 하드웨어의 연산 성능과 메모리 대역폭이 균형을 이루는 지점이다. Interactivity는 사용자 한 명의 속도이고 throughput은 GPU당 전체 토큰 처리량이다. SemiAnalysis의 Pareto frontier는 속도와 처리량 사이에서 가능한 최적 구성들을 보여준다. Iteration-level scheduling과 PagedAttention은 유휴 GPU와 낭비되는 KV 메모리를 줄인다. Chunked prefill은 긴 프리필이 디코드를 멈추게 하는 현상을 줄이는 대신 TTFT를 일부 희생한다. Speculative decoding은 작은 모델이 제안한 토큰을 큰 모델의 프리필로 병렬 검증한다. Agentic AI에서는 평균 62.6분 세션과 약 100개 step이 메모리 재읽기 비용을 폭증시킨다. 사람이 25분 뒤 돌아오는 동안 약 40GB KV를 HBM에 보관하지 않도록 계층형 메모리가 필요하다. 전문 칩과 AI 설계 자동화가 결합하면서 추론 인프라는 이기종 컴퓨팅 시대로 이동한다.
