AI Briefing

continuous batching의 비동기화

·2026.05.15 00:00

핵심 내용

Hugging Face가 continuous batching 비동기화로 최대 24% 속도 개선을 제시했다.

1 / 2

자세히 보기

동기식 continuous batching에서는 CPU와 GPU가 번갈아 일해 GPU가 **24.0%**의 시간 동안 대기한다. Hugging Face는 8K 토큰, 배치 32, 8B 모델 기준 총 생성 시간이 300.6초였고, CPU 오버헤드를 없애면 약 228초까지 줄 수 있다고 측정했다.

해결책은 batch N의 GPU 계산과 batch N+1의 CPU 준비를 겹치는 asynchronous batching이다. 이를 위해 GPU 작업을 default stream이 아닌 non-default stream에 올리고, H2D, compute, D2H를 분리해 병렬로 흘린다.

  • default stream은 다른 스트림과 동기화되므로 쓰지 않는다.
  • non-default stream은 CPU를 바로 돌려주므로, CPU 준비와 GPU 계산을 겹칠 수 있다.
  • CUDA events로 H2D 완료 후 compute, compute 완료 후 D2H가 시작되게 만든다.
  • 스트림만 나누면 순서가 깨지므로, 이벤트로 의존성을 명시해야 한다.

Hugging Face는 이 방식을 transformers의 continuous batching 구현에 반영했다고 밝혔다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.