제18장. 고급 프리필-디코딩 및 키-값 캐시 튜닝
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
본 장은 제17장을 기반으로 추론 프리필 및 디코드 단계에 대한 고급 최적화를 심층적으로 다룹니다. 고수준 확장 전략을 바탕으로 단일 디코드 "메가 커널", 지능형 KV 캐시 튜닝 및 GPU 간 공유, prompt 상태의 빠른 GPU-to-GPU 전송, 적응형 리소스 스케줄링, 프리필 및 디코드 작업자 간 동적 라우팅 등 저수준 기법을 다룹니다.
또한 새로운 수준의 성능과 효율성을 제공하는 하드웨어 및 소프트웨어 혁신을 강조할 것입니다. 이러한 기법을 적용하면 디코드 지연 시간을 크게 줄이고 GPU당 처리량을 향상시키며 대규모 환경에서 엄격한 지연 시간 SLO를 충족할 수 있습니다.
최적화된 디코드 커널
지금까지 우리는 에서 고수준 시스템 및 클러스터 최적화 전략에 집중해 왔습니다. 초고성능 추론을 확장할 때 고려해야 할 또 다른 기술 세트는 저수준 커널 및 메모리 관리 튜닝, 특히 디코딩 단계에 대한 것입니다.
디코딩 단계는 분산 처리되며 종종 메모리 바운디드에 직면합니다. 이로 인해 연구자와 실무자들은 디코딩 단계를 최대한 빠르게 만들고 특정 하드웨어에 최적화하기 위해 노력해 왔습니다. 이 분야에서 주목할 만한 두 가지 혁신은 FlashMLA(DeepSeek), ThunderMLA(Stanford), FlexDecoding(PyTorch)입니다. 이들은 특히 LLM 워크로드에서 흔히 발생하는 가변 시퀀스 시나리오에서 디코딩 중 트랜스포머의 멀티헤드 어텐션 효율성을 목표로 합니다. 이제 각각을 살펴보겠습니다.
FlashMLA (DeepSeek)
Flash Multi-Latent Attention, 즉 FlashMLA 는 DeepSeek에서 도입한 최적화된 디코딩 커널입니다. 이는 다음 토큰을 생성하는 트랜스포머 레이어의 포워드 패스인 단일 토큰 디코딩 단계에 특히 초점을 맞춥니다. FlashMLA는 연산 융합과 GPU 메모리 계층 구조의 효율적 활용을 통해 디코딩 속도를 향상시킵니다.
FlashMLA(디코딩)은 추론에 있어 FlashAttention(프리필)이 훈련에 기여하는 것과 유사한 역할을 합니다. 메모리 접근 오버헤드와 지연 시간을 줄여줍니다. FlashMLA를 사용하면 표준 커널 대비 디코딩 단계에서 상당한 지연 시간 감소를 달성할 수 있습니다.
FlashMLA는 여러 어텐션 연산을 하나로 융합하여 산술 집약도를 높입니다. 이를 통해 하나의 융합 커널 실행으로 여러 헤드와 여러 시간 단계를 처리할 수 있습니다. 이는 작은 배치 크기에도 불구하고 수학 유닛을 지속적으로 활용함으로써 디코딩 중 GPU 사용률을 높입니다. 그림 18-1은 Hopper H100 GPU에서 그룹 쿼리 어텐션(GQA) 및 멀티쿼리 어텐션(MQA)과 같은 다른 어텐션 구현 대비 MLA의 산술 집약도 개선을 보여줍니다. (참고: Blackwell은 더 높은 TFLOPs와 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access