Вычислительная инфраструктура

GPU Architecture

Архитектура GPU

актуальноТекущий рабочий стандарт

Направления: Инженерия ИИ · Распределённый ML

Тысячи простых ядер, сгруппированных в мультипроцессоры, и иерархия памяти, в которую упирается почти любое ускорение.

Ключевые тезисы

  • Потоки исполняются варпами по 32: расхождение ветвлений внутри варпа сериализует выполнение.
  • Разделяемая память (shared memory) — быстрая on-chip SRAM внутри SM, общая для всех потоков блока; в ней держат тайлы .
  • Tensor Cores считают матричное умножение блоками в пониженной точности — ради них и нужен FP16/BF16.

Подробный разбор

2 подтемы — объяснения, формулы, примеры и интерактивные графики.

УровеньКому доступнаДля чего
Регистрыодному потоку~1 тактлокальные переменные
Разделяемая память (shared)всем потокам блокаединицы тактовтайлы , обмен внутри блока
L2-кешвсему кристаллудесятки тактовповторные обращения
Глобальная память (HBM)всем и хостусотни тактоввеса, , данные

Разделяемая память — это программируемый кеш внутри потокового мультипроцессора (SM). Классический приём умножения : загрузить тайл A и тайл B в shared memory один раз, а затем переиспользовать их всеми потоками блока, вместо того чтобы каждый поток ходил в глобальную память за теми же числами.

На практике

Почти любая оптимизация ядра на — это борьба за то, чтобы данные читались из глобальной памяти один раз. Отсюда и тайлинг, и слияние операций (fusion), и FlashAttention, который считает , не материализуя .

  • Потоки исполняются варпами по 32 в модели SIMT: одна инструкция на всю группу.
  • Если внутри варпа ветвление пошло по-разному, ветки выполняются последовательно — расхождение стоит времени.
  • Occupancy — доля активных варпов на SM; она ограничена регистрами и разделяемой памятью на блок.
  • Tensor Cores выполняют операцию «умножить блок на блок и накопить» в FP16/BF16/FP8 — ради них и включают смешанную точность.
На практике

Высокая occupancy сама по себе не цель. Часто быстрее ядро с меньшей загрузкой, но с хорошим переиспользованием данных в разделяемой памяти.

Видеолекции

Записи университетских курсов, где эта тема звучит. Ссылка открывает запись с той секунды, где о ней говорят, — искать по трёхчасовой лекции не нужно.

Связанные темы

Обучение на GPU

AI Accelerators85%

Ускорители: GPU, TPU, NPU · Вычислительная инфраструктура

Чем специализированный чип отличается от универсальной видеокарты и когда эта разница окупается.

GPU in PyTorch85%

GPU в PyTorch · Вычислительная инфраструктура

Как проверить доступность ускорителя, разложить тензоры по устройствам и понять, куда ушла видеопамять.

Distributed Training85%

Распределённое обучение · Вычислительная инфраструктура

Как разложить обучение на несколько GPU: копиями модели по данным, шардами состояния или разрезанием самой модели.

Collective Operations85%

Коллективные операции · Вычислительная инфраструктура

AllReduce, Broadcast, AllGather — примитивы, которыми процессы обучения обмениваются тензорами.

Cluster Networking85%

Сеть кластера · Вычислительная инфраструктура

Топология соединений и скорость обмена, которые определяют, доедет ли обучение до линейного ускорения.

Training Throughput85%

Ускорение обучения · Вычислительная инфраструктура

Что делать, когда число GPU фиксировано: снизить точность, накопить градиент, пересчитать активации, разгрузить загрузчик данных.

Mixed Precision85%

Смешанная точность · Оптимизация обучения

Обучение в fp16 или bf16 при накоплении в fp32: двукратная экономия памяти и заметное ускорение.

Batch size85%

Размер батча · Оптимизация обучения

Число объектов на одно обновление весов: влияет на скорость, память и качество обобщения.

Кому эта тема нужна

Профильная компетенция для роли: MLOps-инженер.

Усиливает профиль: ML Engineer, NLP-инженер, LLM-инженер, CV-инженер, Исследователь, Инженер речи.

Спрашивают на собеседовании: YADROИнфраструктура обучения.

Тема в работе целиком

Разбор архитектуры, где эта тема — один из кирпичей: требования, развилки, цифры и режимы отказа.

Следующий шагТема в работе: Тяжёлый трансформер в продСквозной разбор архитектуры, где эта тема — один из кирпичей: требования, бюджет, развилки и режимы отказа.Перейти →

Глава «Вычислительная инфраструктура» последний раз правилась . Нашли ошибку — напишите.