Темы



AMD и Intel объединились, чтобы упростить запуск ИИ-моделей на процессорах x86

Коротко сгенерировано ИИ по тексту статьи
  • AMD перенесёт оптимизации ZenDNN в основную ветку oneDNN; сроки интеграции первых фрагментов кода не названы.
  • Общая библиотека автоматически выберет оптимальный способ выполнения операций на процессорах x86 AMD или Intel.
  • AMD вошла в руководящий совет проекта; компании также работают над инструкциями ACE, поддержку которых добавят в будущие обновления oneDNN для PyTorch.

Почему это важно: Стандартный PyTorch сможет эффективно использовать процессоры Ryzen и EPYC без установки дополнительных плагинов.

AMD и Intel решили объединить усилия в разработке ПО для ИИ: AMD откажется от отдельной библиотеки ZenDNN и перенесёт свои оптимизации в общую библиотеку oneDNN, созданную Intel. Это позволит ИИ-моделям на фреймворке PyTorch, оптимизированном под Nvidia, эффективнее работать на x86-процессорах обеих компаний без дополнительных настроек. Кроме того, AMD присоединилась к руководящему совету фонда, который отвечает за развитие проекта.

Источник изображения: hwbusters.com

Источник изображения: hwbusters.com

Изначально проект oneDNN был создан в Intel как набор вручную оптимизированных примитивов для глубокого обучения — операций свёртки, матричного умножения и функций активации, на которые приходится основная вычислительная нагрузка при работе моделей ИИ. Такие платформы, как PyTorch, TensorFlow, ONNX Runtime и OpenVINO, используют эту библиотеку для выполнения задач на центральных процессорах. Изначально она была оптимизирована именно под архитектуру Intel.

В ответ AMD представила ZenDNN — ответвление (форк), сохранившее API библиотеки oneDNN, но оптимизированное для архитектуры Zen. Это решение обеспечило высокую производительность на процессорах EPYC, но создало неудобства для владельцев смешанного парка оборудования: разработчикам приходилось следить за тем, какая именно версия библиотеки лежит в основе их программного стека.

Поддержка двух практически идентичных кодовых баз — это своего рода «скрытый налог», о котором не задумываются, пока он не начинает создавать реальные проблемы. Теперь, согласно договорённости между компаниями, оптимизации AMD для архитектуры Zen будут перенесены непосредственно в основную ветку oneDNN. Разработчики смогут использовать единую библиотеку, которая автоматически выбирает оптимальный путь выполнения операций в зависимости от того, на каком процессоре x86 запущен код.

Источник изображения: linux.org

Источник изображения: linux.org

Это решение стало результатом работы «Консультативной группы по экосистеме x86» (x86 Ecosystem Advisory Group) — структуры, созданной AMD и Intel в конце 2024 года для предотвращения расхождения наборов инструкций (ISA). Изначально деятельность группы была сосредоточена на согласовании ISA — задача важная, но незаметная для большинства пользователей. Создание общей библиотеки для задач ИИ стало первым результатом, который непосредственно затрагивает инструменты разработчиков.

Компании также сообщили о совместной работе над AI Compute Extensions (ACE) — новым набором инструкций для матричного умножения в архитектуре x86. Поддержка в PyTorch будет реализована в будущих обновлениях библиотеки oneDNN. Ранее в компилятор GCC 17 уже была добавлена ​​совместимость с ACE. Использование единой библиотеки для таких вычислительных ядер позволяет внедрять поддержку инструкций в PyTorch централизованно и избежать дублирования усилий.

Стоит отметить, что договорённость между Amd и Intel касается только центральных процессорах. В сегменте графических процессоров AMD продолжает развивать свой стек ROCm и вести независимую работу по интеграции с PyTorch. Хотя oneDNN и содержит экспериментальную поддержку GPU AMD через технологию SYCL, никто не рассматривает это как замену ROCm для ускорителей серии Instinct.

Источник изображения: AMD

Источник изображения: AMD

Фонд UXL Foundation образован в сентябре 2023 года и функционирует в рамках структуры Joint Development Foundation (под эгидой Linux Foundation). Таким образом, с точки зрения управления, oneDNN больше не является «библиотекой Intel», даже если основная часть кода была написана инженерами Intel. Тот факт, что AMD заняла руководящую позицию в проекте, служит весомым подтверждением его нейтрального статуса.

Для пользователей, выполняющих задачи инференса на рабочих станциях с процессорами Ryzen или серверах на базе EPYC, результат будет практически незаметным, но значимым: стандартная версия PyTorch начнёт эффективно использовать возможности архитектуры Zen без необходимости установки дополнительных плагинов. В этом и заключается главная цель. Сроки интеграции первых фрагментов кода ZenDNN пока не называются.

©  3DNews