deepseek-ai/DeepGEMM
DeepGEMM: clean and efficient BLAS kernel library on GPU
해결하는 문제
DeepGEMM은 현대 대규모 언어 모델(LLM)의 핵심 계산 프리미티브를 최적화하기 위해 설계된 고성능 CUDA 커널 라이브러리입니다. 효율적인 행렬 곱셈(GEMM) 및 전문가 혼합(MoE) 연산에 대한 요구를 해결하며, 전문가가 튜닝한 라이브러리와 대등하거나 그 이상의 성능을 제공하는 동시에 GPU 커널 최적화를 학습하기에 더 간단하고 접근하기 쉬운 구조를 유지합니다.
작동 원리
이 라이브러리는 FP8, FP4, BF16 정밀도를 지원하는 다양한 텐서 코어 커널을 위한 통합 코드베이스를 제공합니다. DeepJIT이라는 시스템을 사용하여 런타임에 커널을 컴파일하므로 설치 시 CUDA 컴파일이 필요하지 않습니다. 주요 기능은 다음과 같습니다:
- 다양한 GEMM 지원: LLM의 각 단계(학습, 프리필, 디코딩)에 맞춰 조정된 비그룹화, 연속 그룹화, 마스크 그룹화 GEMM을 구현합니다.
- Mega MoE: NVLink 통신과 텐서 코어 계산을 오버랩하는 융합형 메가 커널로, EP 디스패치, 선형 레이어, SwiGLU, EP 결합을 하나의 연산으로 통합합니다.
- MQA Kernels: DeepSeek v3.2에서 사용되는 lightning indexer를 위한 특수 스코어링 커널입니다.
- 하드웨어 최적화: NVIDIA SM90 및 SM100 아키텍처에 특화되어 최적화되었습니다.
대상 사용자
DeepGEMM은 LLM 추론 및 학습 인프라를 개발하는 개발자와 연구원, 특히 NVIDIA H800 또는 이와 유사한 하이엔드 GPU(SM90/SM100)를 사용하며 최대 처리량과 저지연 MoE 연산이 필요한 사용자를 대상으로 합니다.
주요 특징
- 극강의 성능: H800 GPU에서 최대 1550 TFLOPS 달성.
- 런타임 컴파일: DeepJIT을 사용하여 즉석에서 커널을 컴파일하여 설치 과정을 간소화.
- 융합형 MoE: Mega MoE 커널은 통신과 계산을 오버랩하여 오버헤드를 크게 줄입니다.
- 폭넓은 정밀도 지원: FP8, FP4, BF16 형식을 지원합니다.
- 간소화된 설계: 복잡한 CUTLASS 템플릿에 대한 과도한 의존을 피하여 코드베이스를 더 깔끔하고 연구하기 쉽게 만들었습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트