Microsoft разработала инструменты для работы с CUDA на AMD

Корпорация Microsoft, согласно последним данным, разработала набор инструментов, который позволяет выполнять программный код, написанный для платформы Nvidia CUDA, на графических ускорителях AMD. Эта инициатива направлена на уменьшение зависимости от доминирующей в области искусственного интеллекта экосистемы Nvidia.

Microsoft осуществляет трансляцию кода CUDA в формат, совместимый с платформой AMD ROCm. Это позволит более эффективно использовать ускорители AMD, которые компания приобрела в большом количестве, для задач, связанных с искусственным интеллектом, в частности, для инференса уже обученных моделей, что может привести к снижению затрат.

Согласно информации от высокопоставленного сотрудника Microsoft, компания создала несколько инструментов для конвертации моделей CUDA в ROCm, что позволит запускать их на таких ускорителях, как Instinct MI300X. Технически, решение Microsoft может использовать подход, аналогичный проекту ZLUDA, который транслирует вызовы API CUDA в ROCm без необходимости полного переписывания кода. Однако платформа ROCm всё еще считается менее развитой по сравнению с CUDA, что может влиять на производительность в некоторых случаях. На данный момент инструментарий находится в ограниченном внутреннем использовании.

Вопрос-ответ

Какова цель разработки инструментов Microsoft по конверсии кода CUDA в ROCm?

Цель — снизить зависимость от экосистемы Nvidia в области искусственного интеллекта, позволяя использовать графические ускорители AMD (включая Instinct MI300X) для инференса обученных моделей и других задач, что может снизить затраты и расширить доступность вычислительных ресурсов.

Как работает подход Microsoft и на чем он основан?

Инструменты ориентированы на трансляцию вызовов и API CUDA в формат, совместимый с ROCm, аналогично проекту ZLUDA. Это позволяет запускать код CUDA на ускорителях AMD без полного переписывания кода, хотя ROCm в настоящее время может уступать CUDA по уровню зрелости и производительности в некоторых сценариях.

Какие устройства и сценарии на данный момент поддерживаются или планируются?

На данный момент речь идет об ускорителях AMD, включая линейку Instinct MIxx, например MI300X, и сценариях инференса обученных моделей ИИ. Инструменты пока находятся в ограниченном внутреннем использовании и не являются общедоступными для широкой разработки.

Какую конкуренцию и риски несет внедрение такого инструментария?

Это создает конкуренцию Nvidia на рынке ИИ-вычислений и может снизить зависимость от ее экосистемы. Риски включают возможную несовместимость/performance-проблемы из-за различий в архитектуре и экосистемах, а также задержку внедрения из-за ограниченного доступа и необходимости дальнейшей оптимизации.