11 тыс подписчиков
🌟 CUTLASS Tutorial: Быстрое матричное умножение с WGMMA на GPU NVIDIA Hopper.
Большой, подробный и лаконичный туториал в 2-х частях по оптимизации матричного умножения на микроархитектуре Hopper (H100) с использованием библиотеки CUTLASS.
CUTLASS - это набор реализаций алгоритмов линейной алгебры (шаблонов) для использования на CUDA в задачах глубокого обучения, инженерных расчетах и научных исследованиях.
▶️Первая часть посвящена инструкции WGMMA (asynchronous warpgroup matrix-multiply and accumulate) - как она работает, какие ограничения имеет на размер и расположение данных в памяти и как использовать синхронизацию для правильного выполнения операций.
В этой части подробно рассматривается концепция «ядерных матриц» и «матричных дескрипторов», которые нужны для эффективной работы с WGMMA.
✔️ Вторая часть про умножение матриц(GEMM) и методы повышения эффективности GEMM-ядра путем конвейеризации. Рассматриваются две стратегии пайплайна : многоступенчатую и warp-specialization, с подробным описанием их концепции, применением CUTLASS для их построения и сравнивается производительность стратегий.
В конце туториала кратко описывается реализация конвейеризации в GEMM-ядрах для архитектуры Ampere.
#AI #ML #CUTLASS #Tutorial
1 минута
24 сентября 2024