mlc-ai/modern-gpu-programming-for-mlsys
A tutorial on modern GPU programming for machine learning systems
해결 과제
이 프로젝트는 특히 Blackwell급 GPU 아키텍처를 대상으로 최신 GPU 커널 프로그래밍 방법을 학습하기 위한 구조화된 교육 리소스를 제공합니다. 하드웨어 메커니즘에 대한 이해와 머신러닝 시스템을 위한 고성능 최첨단 커널 작성 사이의 간극을 메워줍니다.
작동 방식
이 책은 단계별 접근 방식을 사용합니다. 먼저 GPU 하드웨어(메모리 계층 구조, Tensor Cores, 비동기 엔진)를 설명한 다음, Python 도메인 특화 언어인 TIRx (Tensor IR next)를 소개합니다. 독자는 TIRx를 사용하여 중간 표현 수준에서 커널을 작성하며, 기본적인 행렬 곱셈부터 Flash Attention 4와 같은 복잡한 구현까지 단계적으로 구축하게 됩니다.
대상 독자
이 리소스는 머신러닝을 위한 저수준 GPU 프로그래밍에 관심이 있는 개발자와 연구자를 위해 설계되었습니다. 제공된 코드 예제를 실행하려면 Blackwell급 하드웨어(예: B200 GPU)에 대한 액세스 권한이 필요합니다.
주요 특징
- TMA, Tensor Memory, warpgroups를 포함한 최신 GPU 하드웨어에 대한 포괄적인 가이드.
- Python으로 GPU 커널을 작성하기 위한 TIRx 실습 입문.
- 타일링된 GEMM 및 Flash Attention 4를 포함한 고성능 커널의 단계별 개발.
- 비동기 커널의 벤치마킹, 프로파일링 및 디버깅에 관한 실용적인 부록.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트