TokenWeave: Efficient Compute-Communication Overlap for Distributed LLM Inference
TokenWeave 는 특수 GPU 기능을 활용하여 RMSNorm 연산과 AllReduce 통신을 융합함으로써 작은 배치 크기의 분산 LLM 추론에서 효율적인 연산-통신 중첩을 달성하여, 1 회 반복당 토큰 수가 1024 개에 불과할 때조차 지연 시간을 줄이고 처리량을 증가시키는 새로운 시스템입니다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
거대한 고속 공장 (대규모 언어 모델) 을 운영하며 고객 요청을 처리한다고 상상해 보세요. 이 공장을 충분히 빠르게 만들기 위해 8 명의 전문가 (GPU) 로 구성된 팀을 고용해 함께 일하게 했습니다. 이들은 초고속 컨베이어 벨트 시스템 (NVLink) 으로 연결되어 작업을 즉시 공유할 수 있습니다.
그러나 문제가 하나 있습니다: 작업자들이 서로 대화하는 데 너무 많은 시간을 보냅니다.
초고속 컨베이어 벨트가 있더라도, 작업자들은 실제 건설 (계산) 을 멈추고 메모를 주고받아야 합니다 (통신). 논문에서 저자들은 대규모 모델의 경우 이 "대화 시간"이 전체 시간의 약 20% 를 차지한다고 발견했습니다. 마치 다음 야채를 썰기 전에 "소금 있으세요?"라고 물어보기 위해 주방의 다른 요리사들에게 전화를 거는 요리사처럼 말입니다.
구식 방법: 작업을 잘게 쪼개기
이 문제를 해결하려는 이전 시도들은 작업을 아주 작은 조각으로 나누는 것이었습니다. 아이디어는 다음과 같았습니다: "작업자 A 가 작업자 B 에게 메모를 전달하는 동안, 작업자 A 는 다음 야채를 썰기 시작할 수 있다."
하지만 저자들은 이 방법이 작은 주문 (AI 에게 짧은 질문을 하는 경우) 에서는 잘 작동하지 않는다고 발견했습니다. 큰 작업을 잘게 나누는 것은 실제로 작업자들을 더 느리게 만들었습니다. 너무 자주 멈추고 시작해야 했기 때문입니다. 10 피트마다 릴레이 스틱을 넘기는 달리기 경기를 시도하는 것과 같습니다. 달리는 시간보다 스틱을 넘기기 위해 멈추는 시간이 더 많을 수 있습니다!
새로운 해결책: TokenWeave
저자들은 대기 시간을 제거하기 위해 공장 바닥을 재편성하는 스마트한 관리자 같은 새로운 시스템인 TokenWeave를 구축했습니다. 세 가지 간단한 트릭을 사용하여 그들이 어떻게 했는지 살펴보세요:
1. "스마트 분할" (두 차선 고속도로)
작업을 백만 개의 작은 조각으로 나누는 대신, TokenWeave 는 주문을 단 두 개의 큰 덩어리로 나눕니다.
- 덩어리 A는 작업의 첫 번째 절반을 처리하기 시작합니다.
- 덩어리 B는 두 번째 절반을 처리하기 시작합니다.
- 마법 같은 점: 덩어리 A 가 수학 계산을 하는 동안, 덩어리 B 는 메모를 전달하는 데 바쁩니다. 그런 다음 서로 바뀝니다. 덩어리 A 는 메모를 전달하는 동안 덩어리 B 는 수학 계산을 합니다.
- 왜 작동하는가: 저자들은 작업자들이 컨베이어 벨트를 기다리며 "막히지" 않도록 작업을 어떻게 나눌지 정확히 계산했습니다. 이를 "파동 인식 (wave-aware)"이라고 부르는데, 이는 작업자들이 항상 바쁘도록 보장하는 것으로, 차량이 멈추지 않고 계속 이동하도록 하는 적절하게 타이밍이 맞춰진 신호등 시스템과 같습니다.
2. "퓨즈드 커널" (올인원 도구)
구식 공장에서는 작업자들이 두 가지 별개의 일을 해야 했습니다:
- 메모 전달 (통신).
- 데이터 정규화 (RMSNorm 이라는 수학 단계).
저자들은 이 두 단계를 별도로 수행하는 것은 비효율적이라고 깨달았습니다. 망치를 얻으러 창고까지 갔다가 다시 작업대로 돌아와 못을 치고, 다시 창고로 가서 나사를 얻으러 가는 것과 같습니다.
- 해결책: 그들은 메모 전달과 수학 단계를 동시에 수행하는 새로운 "슈퍼 도구" (퓨즈드 커널) 를 구축했습니다.
- 보너스: 이 슈퍼 도구는 매우 효율적이어서 공장 전체 전력의 아주 작은 부분 (132 명 중 단 2~8 명) 만으로도 실행할 수 있습니다. 이로 인해 나머지 작업자들은 무거운 짐을 들어 올리는 작업 (계산) 에 완전히 집중할 수 있게 됩니다.
3. "스마트 재배열" (올바른 순서로 수행하기)
일반적으로 공장은 모든 메모를 전달한 다음에 수학 계산을 수행합니다. 하지만 저자들은 단계를 재배열하면 메모 전달 과정에서 수학 단계 (RMSNorm) 를 수행할 수 있음을 깨달았습니다.
- 비유: 트럭이 도착할 때까지 기다렸다가 하역을 시작하는 대신, 트럭이 도착하자마자 첫 번째 상자를 내리기 시작하는 것입니다. TokenWeave 는 데이터가 이동하는 동안 수학 계산을 발생하도록 단계를 재배열하여 막대한 시간을 절약합니다.
결과
이 논문은 Llama 와 Qwen 과 같은 실제 모델로 8 개의 H100 GPU 가 장착된 강력한 컴퓨터에서 이 새로운 시스템을 테스트했습니다.
- 속도: 그들은 TokenWeave 가 기존 최첨단 시스템보다 1.28 배 더 빠르다 (28% 속도 향상) 고 발견했습니다.
- 작은 주문: 매우 짧은 질문 (단 1,000 단어) 의 경우에도 1.2 배 더 빠르었습니다. 이전 시스템들은 실제로 작은 주문에서 더 느려졌습니다.
- 처리량: 공장은 시간당 19% 더 많은 고객을 처리할 수 있었습니다.
- "마법" 같은 주장: 어떤 경우 TokenWeave 는 통신이 전혀 없는 이론적인 공장 버전보다 더 잘 수행될 정도로 효율적이었습니다. 이는 그들의 새로운 "슈퍼 도구"가 수학 단계를 매우 잘 해결하여 대화하는 데 소요된 시간을 상쇄했기 때문입니다.
요약
TokenWeave 는 오케스트라의 지휘자 같습니다. 음악가들이 서로 대화하며 멈추게 하는 것 (이는 음악을 느리게 만듭니다) 대신, 지휘자가 악보를 전달하는 동안 동시에 자신의 부분을 연주하도록 가르칩니다. 작업을 두 개의 스마트한 덩어리로 나누고 새로운 "올인원" 도구를 사용함으로써 대기 시간을 제거하여 AI 추론을 훨씬 더 빠르고 효율적으로 만들었습니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.