LLM 요청은 프리필로 시작하고 디코드로 이어지지만 두 단계가 GPU를 사용하는 방식은 다릅니다. 프리필은 많은 입력 토큰을 병렬로 처리해 연산 성능을 주로 사용합니다. 디코드는 시퀀스마다 토큰 하나를 만들며 가중치와 KV 캐시를 반복해서 읽으므로 메모리 대역폭이 중요합니다. 최신 서빙 시스템은 두 단계를 한 배치에 넣지만 어텐션 커널이 별도로 실행되면 한쪽은 대역폭을, 다른 쪽은 연산기를 남길 수 있습니다.
POD-Attention은 겹쳐 실행하는 위치를 커널 안으로 옮깁니다. FlashAttention 계열의 타일링 위에서 프리필과 디코드 작업을 CTA로 표현하고, 스트리밍 멀티프로세서(SM)의 상태를 고려해 배치합니다. 두 커널을 동시에 시작하는 데서 끝나지 않고, 한 연산의 느린 CTA나 공유 메모리 요구가 다른 연산을 막지 않으면서 같은 SM에 보완적인 작업을 놓는 것이 목표입니다.
동시 실행만으로 부족한 이유
CUDA 스트림은 프리필과 디코드 커널을 동시에 시작할 수 있지만 두 종류의 CTA가 모든 SM에 균형 있게 들어간다고 보장하지 않습니다. 먼저 실행된 커널이 SM을 채우면 다른 커널은 기다립니다. 수평 결합은 한 번의 실행에 두 연산을 넣지만 자원을 고정 비율로 나누면 배치 크기와 문맥 길이가 바뀔 때 맞지 않을 수 있습니다.
웨이브 양자화도 손실을 만듭니다. CTA 수가 SM이 한 번에 처리할 수 있는 배수보다 조금만 많아도 일부 CTA 때문에 추가 웨이브를 실행합니다. 작은 작업 증가가 큰 지연시간 단계로 나타날 수 있습니다. 논문에서 스트림 방식은 빈 공간을 채울 때 최대 20% 이득을 보였지만 SM마다 두 연산이 함께 실행되게 만들지는 못했습니다.
스레드 하나가 두 연산을 모두 수행하도록 합치면 같은 위치에 있다는 보장은 생깁니다. 그러나 프리필과 디코드는 적합한 타일 크기와 자원이 다르고, 느린 쪽이 전체 결합 단위를 붙잡습니다. POD-Attention은 CTA 병렬 결합을 선택해 끝난 작업을 하드웨어가 교체할 수 있게 하고, 각 가상 CTA가 수행할 연산은 소프트웨어가 정합니다.

가상 CTA와 SM별 균형
POD-Attention은 일반 CTA 격자를 실행하지만 식별자를 가상의 프리필·디코드 CTA에 대응시킵니다. 결합 커널 안의 소프트웨어 스케줄러는 각 SM에 남은 자원을 고려해 다음 연산을 고릅니다. 디코드 CTA가 끝나면 전체 커널 웨이가 끝나기를 기다리지 않고 프리필 작업이 들어갈 수 있습니다.
타일 크기는 실제 제약입니다. 큰 디코드 타일은 논문의 일부 구성에서 메모리 대역폭 사용률을 최대 70%까지 높였지만 공유 메모리를 더 쓰고 점유율을 낮출 수 있습니다. 프리필은 텐서 코어에 맞는 타일에서 이득을 봅니다. 구현은 두 연산의 공유 메모리를 조정하고, 하나의 프리필 청크가 지나치게 많은 CTA를 만들어 디코드를 밀어내지 않도록 분할 수를 제한합니다.
결합은 어텐션의 수학적 결과를 바꾸지 않습니다. 서로 독립적인 타일의 순서와 위치만 바꾸며 모델 근사화를 사용하지 않습니다. 부분 결과가 만나는 위치에는 정확한 동기화가 필요하고 진행 속도가 다른 두 연산이 교착되지 않아야 합니다. 범용 커널 결합만으로 같은 결과를 얻기 어려운 이유입니다.
장문맥에서 커지는 이점
문맥이 짧으면 선형 레이어가 반복 시간의 대부분을 차지해 어텐션 결합의 종단 영향이 작습니다. KV 캐시가 커지면 디코드 어텐션이 더 많은 메모리를 읽고 프리필도 큰 입력 청크를 처리합니다. 어텐션 비중이 커지면서 보완적인 자원 사용의 가치가 높아집니다.
평가는 A100에서 Yi-6B, Llama-2-7B와 Llama-3-8B 구성을 사용합니다. 온라인 작업부하는 4K에서 32K 문맥을 포함하며 내부 요청 2,000개와 arXiv 요약 요청 2,000개를 각각 시험했습니다. 두 기록은 프리필과 디코드 토큰 비율이 달라 하나의 고정 합성 배치보다 다양한 결합을 만듭니다.
POD-Attention의 어텐션 계산은 별도 FlashAttention·FlashInfer 경로보다 최대 59%, 평균 28% 빨랐습니다. Sarathi-Serve에 통합했을 때 종단 처리량은 최대 22% 높았고 시험 사례의 첫 토큰 시간, 토큰 사이 시간과 전체 요청 시간이 줄었습니다. 선형 연산과 스케줄링, 샘플링 등은 남으므로 응용 개선폭이 커널보다 작습니다.
59%를 적용할 수 있는 범위
59%는 어텐션 커널의 최대 개선이며 전체 서비스 처리량이 아니라 선택된 배치와 문맥, 타일 구성에서 나온 값입니다. 28%는 시험한 범위의 평균이고 22%는 종단 서빙의 최대 결과입니다. 커널 최대값을 용량 계획에 그대로 사용하면 서비스가 어텐션에 쓰지 않은 시간까지 줄었다고 계산하게 됩니다.
비교 대상은 각각 최적화된 커널의 별도 실행이므로 POD-Attention은 커널 구현뿐 아니라 두 작업의 조정에서 이득을 얻습니다. FlashAttention과 FlashInfer가 느리다는 일반 주장과는 다릅니다. 새 커널 버전과 다른 GPU, 다른 배칭 정책에서는 차이가 달라집니다. H100 이후 GPU는 텐서 코어와 메모리 대역폭, 공유 메모리와 스케줄링 특성이 바뀝니다.
지연시간은 요청 대기열에도 좌우됩니다. 하이브리드 반복이 빨라도 스케줄러가 큰 프리필 청크를 넣으면 디코드가 기다릴 수 있습니다. 커널과 스케줄러는 청크 크기와 SLO 우선순위를 함께 정해야 하며, 한쪽만 최적화하면 병목이 다른 곳으로 이동합니다.
스케줄링 입력으로 쓰는 자원 특성
GPU 서빙 스케줄러는 토큰 수와 메모리 용량을 주로 추적하지만, POD-Attention은 작업의 자원 특성도 필요하다고 보여 줍니다. 같은 토큰 수라도 단계와 문맥에 따라 연산량과 대역폭 사용이 다릅니다. 같은 작업끼리 묶는 것보다 보완적인 두 작업을 같이 놓는 편이 모델 병렬화를 바꾸지 않고 더 빨리 끝날 수 있습니다.
온라인에서 쓸 수 있을 만큼 신호는 단순해야 합니다. 가능한 모든 배치를 미리 측정할 수는 없습니다. 프리필 청크와 디코드 그룹을 CTA 수, 공유 메모리, 연산 집약도와 읽기 바이트로 구간화할 수 있습니다. 커널이 검증된 조합과 지연시간을 소수로 제공하면 바깥 스케줄러가 그 범위에서 선택할 수 있습니다.
프리필과 디코드를 서로 다른 GPU 풀로 나누는 구조와는 반대 선택입니다. 분리 서빙은 같은 GPU에서 자원을 보완할 기회를 버리는 대신 두 단계를 독립적으로 확장합니다. 네트워크와 KV 이동 비용, 부하와 문맥 길이, 각 풀의 활용률에 따라 우위가 달라집니다. 장문맥 어텐션이 지배적이면 POD-Attention은 같은 장치에서 처리하는 하이브리드 배칭의 근거를 강화합니다.
예측 가능한 지연시간과 진단
두 지연시간 등급을 합치면 평균 효율은 좋아져도 예측은 어려워집니다. 토큰 사이 시간 목표가 엄격한 디코드 요청이 프리필과 SM을 공유하기 때문입니다. 한 반복에 들어가는 프리필 양과 결합 CTA 실행 시간을 제한해야 하며, 평균 커널 속도보다 꼬리 지연시간으로 한도를 정해야 합니다.
지원하지 않는 모양도 입장 제어에 포함해야 합니다. 극단적으로 긴 문맥, 다른 헤드 차원이나 양자화 어텐션은 별도 커널로 돌아갈 수 있습니다. 실제 트래픽 중 최적 경로를 쓰는 비율과 폴백 지점의 성능 차이를 용량 계획에 반영해야 합니다.
진단도 달라집니다. GPU 추적에는 익숙한 두 커널 대신 하나의 결합 커널이 보입니다. 런타임은 가상 CTA 비율, 타일 선택, 점유율, 메모리 처리량과 폴백 이유를 제공해야 합니다. 이 정보가 없으면 스케줄러 변경이 설명하기 어려운 커널 성능 저하로 보일 수 있습니다.
재현과 장비 평가 기준
첫 단계는 같은 입력에서 별도, 스트림 동시, 결합 어텐션을 비교하며 CTA 웨이브, SM 점유율, 텐서 코어 활동, 메모리 대역폭과 공유 메모리를 기록하는 것입니다. 다음에는 실제 서빙 스케줄러에 통합해 운영 문맥 범위의 요청 기록을 시험합니다. 마지막에는 부하별 SLO 준수 처리량과 p99 토큰 지연시간을 보고해야 합니다.
입력 청크, 디코드 배치, 모델, 정밀도와 GPU 세대를 바꾸고 POD-Attention을 사용한 반복 비율과 모든 폴백 원인을 기록합니다. 두 자원을 동시에 더 많이 사용하면 요청이 빨리 끝나도 순간 보드 전력이 높아질 수 있으므로 전력도 확인해야 합니다.
장비 구매에서도 최대 FLOPS와 HBM 대역폭을 따로 비교하는 것만으로 부족합니다. 균형 잡힌 장치와 소프트웨어는 연산과 대역폭을 같은 순간에 사용할 수 있습니다. 커널과 스케줄러가 보완 작업을 만들 만큼 유연할 때만 그 가치가 나타납니다.
종단 SLO로 확인할 커널 이점
하이브리드 배칭이 자동으로 하이브리드 실행을 만드는 것은 아닙니다. 별도 프리필과 디코드 커널은 같은 배치에서도 GPU의 보완 자원을 남길 수 있습니다. POD-Attention은 CTA와 SM 수준에서 겹침을 만들고 장문맥 시험에서 큰 어텐션 개선과 더 작은 종단 이득을 냈습니다.
운영자는 어텐션이 요청 시간에서 차지하는 비율과 꼬리 지연시간을 위해 결합 반복을 제한할 수 있는지 확인해야 합니다. 장문맥과 혼합 단계가 지배하면 모델을 바꾸지 않고 용량을 높일 수 있습니다. 선형 레이어나 강한 작업 격리가 지배하면 복잡한 결합 커널의 이득이 작습니다. 최종 근거는 가장 빠른 어텐션 미세 벤치마크가 아니라 실제 요청의 SLO 곡선입니다.
출처와 저작권 안내
이 글은 ASPLOS 2025 논문[1]을 우리 표현으로 다시 분석한 편집 다이제스트입니다. 논문의 문장·도판·표를 옮기지 않았으며, 본문 도판은 Silicon & Systems가 새로 제작했습니다. 결과는 논문의 모델, GPU, 요청 기록, 문맥 길이와 비교 커널 조건을 유지해 인용했습니다. 원 논문의 저작권은 저자에게 있고 출판권은 ACM(2025)에 허여됐습니다.