스캐터랩 블로그 · 2023. 09. 13.
최대 24배 빠른 vLLM의 비밀 파헤치기
AI 엔지니어링 브리핑
vLLM은 대화 생성에 필요한 중간 결과를 효율적으로 저장하고 GPU 계산을 여러 작업에 나눠 병렬 처리해 LLM의 응답 속도를 크게 높이는 구조를 보여준다.
문제 & 배경
- 문제 & 배경: 여러 요청과 여러 답변을 동시에 처리하면 GPU 메모리가 빠르게 부족해지고, 이미 계산한 프롬프트 정보를 반복 계산하거나 작업이 서로 기다리는 문제가 생긴다.
기술 & 해결책
- 기술 & 해결책: vLLM은 프롬프트와 생성 결과의 중간 상태인 KV 캐시를 작은 블록으로 나눠 공유·할당하고, 부족하면 CPU로 옮겼다가 다시 가져오며, 스케줄러와 CUDA 커널이 필요한 토큰만 병렬로 계산하도록 구성한다.
교훈 & 주의점
- 교훈 & 주의점: 속도를 높이려면 단순히 GPU를 많이 쓰는 것보다 캐시 메모리를 정확히 계산하고 작업 우선순위·공유 블록·CPU↔GPU 이동을 관리하며, 어텐션 계산에서도 메모리 접근과 병렬 reduction을 세심하게 최적화해야 한다.
함께 읽을 글
내용이 비슷해요내용이 비슷한 글을 먼저 보여드려요. 같은 문제나 해결책을 다룬다는 뜻은 아니에요.