Анализ крипторынка Интервью с лидерами отрасли

Оптимизация вычислений с помощью кастомных ядер для AMD MI300: ключ к высокой производительности ИИ

Анализ крипторынка Интервью с лидерами отрасли
Creating custom kernels for the AMD MI300

Подробное руководство по созданию и оптимизации специализированных вычислительных ядер для графического процессора AMD MI300. Рассматриваются архитектурные особенности, методы повышения производительности, а также практическая реализация на примере ядров для эффективной работы больших нейросетей.

Система обработки нейросетевых моделей становится все более сложной и ресурсоемкой, что требует непрерывного улучшения программного обеспечения и аппаратной оптимизации. Одним из ключевых компонентов, определяющих эффективность вычислений в современной глубоковычислительной технике, являются вычислительные ядра, или kernel'ы — базовые алгоритмы, которые реализуют операции над тензорами. Особенно это важно для задач с гигантскими объемами данных и моделей с миллиардами параметров. В этой связи создание кастомных ядер, специально адаптированных под архитектуру конкретных GPU, становится важным направлением. Именно на этом сосредоточено внимание при разработке ядер для AMD MI300 — мощного графического процессора нового поколения, способного раскрыть потенциал больших моделей искусственного интеллекта.

AMD MI300 представляет собой весьма сложное устройство, состоящее из сотен вычислительных блоков и множества уровней памяти, что требует глубокого понимания его архитектуры для эффективной оптимизации вычислительных задач. Архитектура MI300 включает в себя 8 ускорительных чиплетов — XCD (Accelerator Complex Dies), объединяющих в себе 38 вычислительных блоков (Compute Units, CU) каждый. Всего на GPU насчитывается около 304 CU, способных одновременно исполнять огромное количество потоков. Такой параллелизм позволяет запускать сотни тысяч потоков одновременно, что дает интеграторам возможность решать комплексные задачи с оптимальной пропускной способностью. Однако высокая параллельность требует ограничений и координации, поскольку потоки на уровне варпа, состоящего из 64 потоков, должны выполнять одну и ту же инструкцию синхронно.

Кроме того, MI300 оснащен несколькими уровнями кэш-памяти, включая L1 на каждом CU, L2, общую для XCD, и огромный Infinity Cache объемом 256 МБ, позволяющий снижать задержки при доступе к данным. Кроме того, графический процессор располагает огромным объемом видеопамяти 192 ГБ, что особенно ценно для обработки крупных моделей. Одной из главных особенностей работы на MI300 является необходимость минимизировать обращения к глобальной видеопамяти из-за высокой латентности. Такое требование заставляет разработчиков писать ядра, которые максимально эффективно используют кэш и совместное использование памяти на уровне блока потоков (shared memory). Создание кастомных ядер становится необходимостью, поскольку стандартные библиотеки оптимизированы, как правило, под более универсальные задачи, а не под узкоспециализированные сценарии, например, специфику инференса крупномасштабных моделей на FP8 с определенной геометрией тензоров.

Одним из главных примеров значительного увеличения производительности является оптимизация ядра RMS нормализации с гибридной операцией усреднения, нормализации и конвертации в FP8. Традиционно эти операции выполняются раздельно, вызывая значительные затраты времени. Интеграция их в единый конвейер с грамотным распределением потоков и использованием синхронизации на уровне блока потоков позволила добиться до 10-кратного прироста производительности по сравнению с базовыми реализациями в PyTorch. Основу успеха составляет грамотное распределение вычислительных ресурсов и минимизация операций записи и чтения из глобальной памяти. Особое внимание уделяется загрузке данных шириной 128 бит за одну инструкцию, обеспечивающей скоординированный, непрерывный доступ к памяти всеми потоками в варпе.

Такой подход снижает количество необходимых циклов загрузки и, следовательно, время ожидания. Важной оптимизацией стало использование общей памяти (shared memory) для промежуточного хранения данных, что сводит к минимуму необходимость повторного обращения к более медленной видеопамяти. Аналогичный подход был применен к ядру, реализующему функцию активации SwiGLU, которая используется в блоке MLP. Оптимизация этого ядра включала использование векторизованных инструкций для FP16, позволяющих сразу обрабатывать несколько элементов, что существенно увеличивает пропускную способность и снижает количество выполняемых инструкций. Кроме того, замена операции экспоненты (exp) на более быструю exp2 с предварительным масштабированием входных данных позволила снизить задержки при вычислении функции сигмоидной активации без заметных потерь точности.

Существенную часть времени при выполнении инференса занимают операции свертки и матричного умножения общего вида (GEMM). Несмотря на высокий уровень оптимизации стандартных библиотек hipBLAS и rocBLAS под универсальные задачи, ситуация меняется при работе с «тонкими» GEMM — с небольшим числом строк. Такие задачи вызывают недостаточную нагрузку на вычислительные блоки GPU, что снижает общую эффективность. Для решения этой проблемы была реализована техника split-K, позволяющая разбивать GEMM по общей размерности K на несколько параллельных подзадач. Это увеличивает число одновременно загруженных в вычисление блоков и, таким образом, повышает загрузку GPU.

Для максимизации производительности также был применён метод специализированного распределения варпов: части варпов выделяются для загрузки данных (продюсеры), а другие — для вычислений (консюмеры). Такой асинхронный подход распределения работы позволяет лучше скрывать задержки обращения к памяти и повысить арифметическую интенсивность задачи. Важным улучшением стала поддержка 4:2 разрежённости ввода в специальных MFMA (Matrix Fused Multiply-Add) инструкциях. Это позволило эффективно использовать аппаратную поддержку разрежённых операций, характерную для MI300, а также минимизировать добавочные расходы памяти за счет устранения лишних операций с нулями. Подобный подход обеспечивает заметный выигрыш в производительности на низких размерах входных данных, что актуально для параллельной обработки запросов моделью с небольшими батчами.

При интеграции оптимизированных кастомных ядер в систему управления инференсом VLLM и окружение с 8 GPU MI300X удалось достичь значительного улучшения времени отклика — критически важного параметра при масштабировании сервисов с миллионами запросов. Анализ показал, что ядра для операций RMS нормализации и SwiGLU активации снизили их долю в общей задержке на 15%, а новый skinny GEMM kernel обеспечил ускорение при специфических проекциях модели. Совместное использование этих подходов привело к общей суммарной оптимизации латентности почти по всем ключевым этапам вычислений. Полученные в результате ускорения метрики значительно увеличивают эффективность работы нейросетевых моделей на AMD MI300, делая эту платформу конкурентоспособной с решениями Nvidia. Благодаря открытому доступу к исходкам созданных ядер в репозитории hf-rocm-kernels сообществу разработчиков предоставляется возможность воспроизвести результаты, адаптировать и расширить реализованные оптимизации под собственные задачи.

Автоматическая торговля на криптовалютных биржах Покупайте и продавайте криптовалюты по лучшим курсам Privatejetfinder.com (RU)

Далее
Crypto Price Analysis July-18: ETH, XRP, ADA, SOL, and HYPE
Вторник, 28 Октябрь 2025 Анализ криптовалютных цен на 18 июля: Ethereum, Ripple, Cardano, Solana и Hyperliquid

Обширный обзор динамики цен ведущих криптовалют на 18 июля с акцентом на ключевые моменты роста Ethereum, Ripple, Cardano, Solana и Hyperliquid, а также перспективы рынка в ближайшие недели.

Thumzup Media, Backed by Donald Trump Jr., Greenlights $250M Crypto Holdings
Вторник, 28 Октябрь 2025 Thumzup Media под руководством Дональда Трампа-младшего инвестирует 250 миллионов долларов в криптовалюты: новый взгляд на корпоративные финансы

Thumzup Media, компания с участием Дональда Трампа-младшего, заявила о планах вложить до 250 миллионов долларов в различные криптовалюты, включая Bitcoin, Ether, Solana и другие. Это решение отражает растущую тенденцию корпоративного мира к интеграции цифровых активов в деловую стратегию на фоне усиления регулирования и принятия новых технологий в США.

MP Stock Hits New High Then Plummets. This Is a Crazy Situation
Вторник, 28 Октябрь 2025 Акции MP: Резкий Взлёт и Стремительный Обвал – Разбор Безумной Ситуации

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

Prologis Ramps Up Plans for New Warehouse Construction
Вторник, 28 Октябрь 2025 Prologis активизирует планы по строительству новых складских комплексов: что это значит для рынка логистики в России

Компания Prologis расширяет свою программу строительства складских помещений, что оказывает значительное влияние на логистический рынок России. В материале рассмотрены причины активизации строительства, преимущества для бизнеса и перспективы развития складской инфраструктуры в стране.

Nvidia Breaks Out, but Leveraged ETF NVDL Lags Behind
Вторник, 28 Октябрь 2025 Рост акций Nvidia и отставание ETF NVDL: уроки инвестирования в кредитное плечо

Стабильный рост акций Nvidia на фоне новых разрешений и технологических достижений противоречит динамике популярного кредитного плеча ETF NVDL, демонстрируя тонкости и риски инвестирования в такие продукты на фоне волатильности рынка и механизма их работы.

Investors become inured to policy whiplash, Powell headlines cause limited reaction
Вторник, 28 Октябрь 2025 Почему инвесторы перестали резко реагировать на политические колебания: анализ реакции рынка на заявления о Джероме Пауэлле

В условиях нестабильной политической среды инвесторы адаптировались к резким изменениям и перестали сильно реагировать на сенсационные заголовки, связанные с руководителем ФРС Джероми Пауэлле. Разбираем причины и последствия такой динамики для финансовых рынков.

Coats Group to Buy OrthoLite for $770 Million
Вторник, 28 Октябрь 2025 Coats Group приобретает OrthoLite за 770 миллионов долларов: новый этап развития в индустрии обувных компонентов

Coats Group объявила о заключении крупной сделки по приобретению лидера на рынке премиальных стелек OrthoLite с целью расширения присутствия в быстрорастущем сегменте обувных компонентов и укрепления позиций на мировом рынке.