mirage-project/mirage

Mirage Persistent Kernel: Compiling LLMs into a MegaKernel

해결하는 문제

Mirage Persistent Kernel (MPK)는 다중 GPU LLM 추론과 관련된 높은 지연 시간을 해결합니다. 복수의 GPU 커널을 실행하는 오버헤드와 그 사이의 통신 병목을 제거하기 위해 전체 추론 프로세스를 하나의 '메가커널'로 융합합니다.

작동 방식

MPK는 LLM의 계산 그래프를 하나의 융합 GPU 커널로 변환하는 컴파일러 및 런타임 시스템입니다. 각 연산에 대해 별도의 커널을 실행하는 대신, 하나의 실행 내에서 모든 필요한 계산과 통신을 수행합니다. 개발자는 rmsnorm_linear_layer와 같은 융합 연산을 연결하여 커널의 입력, 출력 및 계산 그래프를 정의한 후, 그래프를 최적화된 실행 가능한 커널로 컴파일합니다.

대상 사용자

저지연 LLM 추론과 GPU 최적화에 집중하는 ML 엔지니어 및 연구자로, 광범위한 수동 CUDA 프로그래밍 없이 추론 지연을 줄이고자 하는 분들.

주요 특징

  • 현저한 지연 감소: LLM 추론 지연을 1.2배에서 6.7배까지 감소.
  • 엔드투엔드 융합: 계산과 통신을 하나의 GPU 커널 실행으로 융합.
  • 자동 컴파일: 고수준 Python API를 사용해 Hugging Face 모델을 메가커널로 컴파일 가능.
  • 통합 프로파일링: 메가커널 내 각 작업의 실행 타임라인을 시각화할 수 있는 도구 포함.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트