정의
LLM 추론 서빙에서의 Roofline 분석은 단일 GPU 또는 GPU 랙 단위에서 latency(지연 시간)와 throughput(처리량)이 t_compute(계산 시간)와 t_memory(메모리 접근 시간) 중 어느 쪽에 의해 제한(bound)되는지를 batch size의 함수로 모델링하는 방법론이다. 이 분석을 통해 최적의 batch size, 하드웨어-모델 정합성, 그리고 토큰당 비용 곡선의 형태를 설명할 수 있다.
핵심 속성
- t_compute: batch size × 활성 파라미터 수(N_active)를 GPU FLOPs로 나눈 값. attention 계산은 편의상 생략.
- t_memory: 전체 파라미터 로딩 시간(N_total / HBM bandwidth) + KV cache 로딩 시간(batch × sequence length × bytes per token / HBM bandwidth)의 합.
- Latency = max(t_compute, t_memory): 둘 중 더 큰 값이 실제 지연 시간을 결정.
- Rooffline 곡선의 형태: batch size가 작을 때는 memory-bound, 클 때는 compute-bound. 두 곡선이 교차하는 지점이 최적 batch size.
- 최적 batch size 추정식: B_opt ≈ (FLOPs / memory bandwidth) × (N_total / N_active) ≈ 300 × (1 / sparsity ratio)
- 20ms 사이클: HBM 전체 용량을 대역폭으로 나눈 drain time이 약 20ms. 이 시간을 기준으로 연산 열차(tick)의 주기를 설계.
- 200K 컨텍스트 임계점: KV cache 용량이 t_memory를 급격히 증가시키는 구간. 200K를 넘으면 memory-bound로 전환되어 서빙 비용이 급등.
관계
- 20260606-gpu-rack-as-one-computer — Roofline 분석의 하드웨어 전제: NVL72 랙 단위 메모리 통합이 batch 확장을 가능하게 함
- 20260606-token-pricing-is-inverse-roofline — Roofline 곡선이 토큰 가격 정책의 역설계 근거가 됨
- pagedattention — KV cache 메모리 효율화 기술로 t_memory의 기울기를 낮춤
- chunked-prefill — prefill과 decode를 혼합하여 batch utilization을 극대화하는 기법
- sparse-moe — N_total 대비 N_active의 비율(sparsity)이 최적 batch와 compute/memory 균형을 결정
인용
“저희가 이거를 이해하고 나면 사실은 IDC 가격이, 하드웨어 가격을 저만큼 투입하고 제가 토큰당 얼마를 생성하는데 그 가격을 input token당 100만 토큰당 5불을 받고… 이런 것들을 계산하면 그 프론티어 랩들의 inference farm의 어떤 경제성, 수율 이런 것들이 개선될 수 있겠다.”
“모델은 하드웨어의 그림자다. 하드웨어가 그런 방향으로 틀기도 하고, 하드웨어가 그렇게 되어 있기 때문에 모델이 그걸 fully utilize하기 위해서 바뀌기도 한다.”
출처
- 📎 클리핑: 20260613-ep96-ko-transcript