Как стать автором
Обновить
49.15
Fplus Tech
IT-холдинг Fplus

Для каких типов обучений нейросетевых моделей подходят ускорители AMD

Уровень сложностиПростой
Время на прочтение14 мин
Количество просмотров1.3K

Введение

Привет, Хабр! В прошлом материале мы рассказывали про графические ускорители для ЦОД, пытаясь разобраться, какие альтернативы NVIDIA доступны на нынешнем рынке GPU/xPU, и что потенциально интересного стоит ожидать в ближайшее время. Неудивительно, что материал получился большим и фундаментальным, хоть мы и не смогли рассказать обо всех разработках ввиду некоторых информационных ограничений (в частности, о некоторых китайских и российских графических решениях писать попросту рано; к тому же разработка некоторых устройств настолько «секретна», что производители пока что не приветствуют упоминание своих продуктов в публикациях)

Среди комментариев, которыми откликнулись читатели Хабра был весьма интересный вопрос, заслуживающий отдельной темы для его раскрытия. А звучит он так: «Как сейчас обстоят дела с обучением transformers моделей на GPU от AMD? Есть ли такой опыт? Есть ли смысл брать AMD для обучения?». Ответ наших специалистов был предельно емким:

Если стек основан на PyTorch, Hugging Face и LLM, AMD пока ещё не лучший выбор. Но если AMD продолжит развивать ROCm, то через пару лет ситуация может измениться. Как итог: если нужен стабильный стек — лучше брать NVIDIA; если бюджет ограничен, но хочется попробовать – можно взять AMD (особенно MI200/300); если нужен инференс, а не обучение – AMD тоже может быть хорошим вариантом.

Что ж…, давайте попробуем копнуть поглубже и получить исчерпывающий ответ, ведь решения AMD действительно являются потенциально интересной альтернативой монополии NVIDIA. 

В последние годы, что совсем неудивительно, стал заметно вырисовываться тренд на специализированные AI-ускорители: такие, как Google TPU, Intel Habana, Graphcore IPU, – однако классические GPU/xPU по-прежнему остаются основным инструментом для обучения нейросетей. В этом контексте пользователи сталкиваются с выбором между NVIDIA и AMD. NVIDIA доминирует в сегменте AI-вычислений во многом благодаря мощной экосистеме, включающей проприетарный стек технологий (CUDA, TensorRT, cuDNN) и широкую поддержку со стороны разработчиков ПО.

AMD, в свою очередь, предлагает альтернативные решения, основанные на открытой экосистеме ROCm. Однако поддержка «красных» видеокарт в популярных фреймворках пока остается ограниченной, и это вполне обоснованно делает NVIDIA основным выбором для задач глубокого обучения и промышленных AI-решений. Как следствие: подавляющее большинство AI-продуктов по-прежнему разрабатываются с прицелом на NVIDIA, которая является эдаким стандартом де-факто. Но… давайте подробнее разберем, в каких случаях решения от AMD могут быть полезной альтернативой и какие задачи они могут решать наиболее эффективно.

Преимущества NVIDIA

Преимущества AMD

Поддержка AI-фреймворков (включая TensorFlow, PyTorch, JAX и нативную поддержку CUDA и TensorRT)

Более открытая система (возможность использования карт AMD без привязки к проприетарным технологиям)

Оптимизированные драйверы и API (такие технологии как cuDNN, например, позволяют значительно ускорять вычисления)

Стоимость (видеокарты AMD зачастую имеют более привлекательную цену при схожих характеристиках)

1. Подход AMD к вычислениям в AI

Как мы уже отметили выше, AMD выпускает производительные графические ускорители и открытые программные экосистемы. Однако несмотря на ряд преимуществ, связанных с архитектурными особенностями и стоимостью (а она значительно ниже цен на продукцию NVIDIA), видеокарты AMD сталкиваются с проблемами в плане оптимизации для задач машинного обучения. Во многом это серьезный камень преткновения, который не позволяет выбиться в лидеры и начать конкурировать с «зелеными» на равных. Хотя, спору нет, AMD прикладывает максимум усилий в направлении ИИ. С другой стороны: в мире ML/DL все так быстро развивается, что через год или два AMD вполне может вырваться в передовики. Уже сейчас под лидерством AMD формируется консорциум для занятия поля тренинга AI-моделей.

1.1. Архитектура и спецификации видеокарт AMD для AI-задач

Для тех, кто ищет оптимизированные под машинное обучение графические процессоры, AMD предлагает серию ускорителей Radeon Instinct. Эти xPU разработаны с целью обеспечения исключительной вычислительной производительности и энергоэффективности, что…, казалось бы, делает их оптимальными для приложений глубокого обучения. Решения из этой серии оснащены емкой HDM-памятью, которая позволяет быстро обрабатывать массивные наборы данных в задачах DL (Deep Learning) с интенсивным использованием памяти. Они также поставляются с оптимизированными библиотеками глубокого обучения и программными инструментами, которые повышают производительность и продуктивность.

Графические чипы Instinct разрабатываются на базе архитектуры CDNA. В отличие от игровой RDNA, CDNA предлагает более высокую пропускную способность памяти (за счет использования вышеупомянутых HBM-чипов), оптимизированные вычислительные блоки для параллельных операций и масштабируемость решений для многопроцессорных систем.

Графические ускорители Radeon Instinct для AI-задач у AMD представлены в двух линейках: AMD Instinct MI200 и AMD Instinct MI300. MI200 – флагманская серия для вычислительных кластеров и суперкомпьютеров, основанная на архитектуре CDNA 2. Здесь мы можем рассчитывать на высокую пропускную способность памяти HBM2e, поддержку многочиповых модулей (MCM) и улучшенную масштабируемость для HPC- и AI-вычислений. MI300 – новое поколение, использующее архитектуру CDNA 3, которая объединяет CPU и GPU в едином кристалле (APU-архитектура), повышая энергоэффективность и снижая задержки передачи данных. В сравнении с 200-й серией 300-я предлагает улучшенные возможности работы с матричными вычислениями, что делает ее более конкурентоспособной в AI-задачах.

1.2. AMD Infinity Fabric: улучшенная связь с GPU

Одной из главных особенностей графических ускорителей AMD является Infinity Fabric – высокоскоростная технология межсоединений, которая облегчает связь между различными ядрами GPU и компонентами памяти. Эта технология обеспечивает более быстрое перемещение данных внутри GPU, сокращая задержку и улучшая общую производительность.

В задачах машинного обучения, где большие наборы данных должны обрабатываться в итеративных алгоритмах, эффективная связь между ядрами GPU имеет решающее значение. Infinity Fabric от AMD обеспечивает преимущество в этом отношении, что приводит к быстрому времени обучения нейросетевых моделей и лучшему использованию вычислительной мощности графического чипа. Более того, масштабируемость Infinity Fabric позволяет видеокартам AMD преуспевать в конфигурациях с несколькими GPU. 

Благодаря бесшовному подключению нескольких GPU можно создавать эффективные AI-системы, способные справляться даже с требовательными рабочими нагрузками. Выходит, что интеграция Infinity Fabric в видеокарты AMD в целом повышает их пригодность для сложных задач машинного обучения за счет оптимизации взаимодействия между ядрами графического процессора и повышения общей производительности. То есть, в аппаратном плане тут все действительно на высоте.

1.3. Фреймворки и программные экосистемы (ROCm vs. CUDA)

Характеристики

ROCm (AMD)

CUDA (NVIDIA)

Исходный код

Открытый

Закрытый

Поддержка фреймворков

Ограниченная

Полная

Производительность GPU

Требует оптимизации

Оптимизирована изначально

Совместимость

Только AMD Instinct

Все GPU NVIDIA

В отличие от CUDA, которая является собственной платформой параллельных вычислений NVIDIA, ROCm (Radeon Open Compute) является программной платформой AMD с открытым исходным кодом и делает ставку на такие стандарты, как OpenCL и HIP. Официально она поддерживает только серверные GPU AMD (такие, как Instinct MI300 и MI325X). Для потребительских же видеокарт, таких как Radeon RX 7000, поддержка остается экспериментальной.

ROCm позволяет разработчикам использовать вычислительную мощность графических процессоров AMD в широком спектре операционных систем, включая Linux (но при этом не всегда работает стабильно на разных дистрибутивах). В какой-то мере гибкость и возможность самостоятельной (а не заранее вшитой) оптимизации и точечной настройки делает графические карты AMD привлекательным вариантом для исследователей и разработчиков, желающих создавать AI-модели на различных аппаратных установках.

Также Radeon Open Compute включает в себя библиотеки и инструменты, предназначенные для оптимизации производительности рабочих нагрузок машинного обучения. Например, библиотека MIOpen предлагает реализации функций глубокого обучения с ускорением на GPU, в то время как ROCm SMI (интерфейс управления системой) позволяет отслеживать показатели производительности GPU в режиме реального времени.

Однако между ROCm и CUDA есть существенные различия. В частности, CUDA широко поддерживается ключевыми AI-фреймворками (TensorFlow, PyTorch, JAX), а ROCm хоть и предлагает поддержку TensorFlow и PyTorch, но не столь стабильную и полную. Кроме того, CUDA обладает лучшей оптимизацией вычислений за счет специализированных библиотек (cuDNN, TensorRT), тогда как ROCm требует дополнительных настроек для достижения схожих результатов. В то же время не стоит забывать, что ROCm является открытой платформой, и это дает разработчикам больше возможностей для адаптации…. Впрочем, это же приводит к усложнению настройки и интеграции.

В пользу AMD можно было бы привести теорию о том, что CUDA работает исключительно на графических картах NVIDIA, а ROCm поддерживает различные аппаратные решения. Но, увы, на практике данная платформа оптимизирована пока только для карт AMD Instinct. Выходит, что CUDA, несмотря на растущее развитие ROCm, по-прежнему остается стандартом индустрии AI-обучения за счет лучшей поддержки, удобства использования и производительности.

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

В то же время ее проще развернуть — пользователи просто загружают данные и получают результаты, ведь все инструменты уже оптимизированы и интегрированы в программный комплекс Nvidia AI Enterprise. Техническая сложность инструментов CUDA может нарастать по мере необходимости для тех, кто требует более глубокой кастомизации. Заметим, что CUDA-исполняемые файлы используются в ключевых отраслях, таких как робототехника, автономные автомобили (Tesla, Waymo), здравоохранение (анализ снимков в MedTech AI), финансы (хедж-фонды, алгоритмическая торговля) и квантовые вычисления (симуляции). Кроме того, возможности CUDA применяются для генерации синтетических данных, которые невозможно получить в реальном мире.

1.4. Производительность решений AMD в сравнении с NVIDIA

Теоретически, видеокарты AMD могут показывать схожие результаты с NVIDIA в задачах машинного обучения. На практике же CUDA более эффективно использует GPU.

Осенью 2024 года графический ускоритель AMD Instinct MI300X впервые прошел тесты MLPerf (Inference v4.1) и показал, что может конкурировать с NVIDIA H100 в задачах инференса на модели Llama 2 70B. Однако он уступил модели H200 со 141 ГБ памяти HBM3E и более высокой пропускной способностью. В свою очередь, Blackwell B200 значительно повышает планку производительности, хотя доступность этого ускорителя пока остается под вопросом. 

С другой стороны, в конце 2024 года для заказа стала доступна новая модель AMD Instinct MI325X, которая получила 288 ГБ памяти HBM3E с пропускной способностью 6 ТБ/с, что должно исправить дисбаланс между объемом памяти и вычислительной мощностью. В 2025 году компания планирует выпустить модель MI350 на базе архитектуры CDNA 4, которая перейдет на 3-нм техпроцесс и получит поддержку новых форматов вычислений FP6 и FP4, что должно существенно повысить ее производительность. А в 2026 году, согласно дорожной карте AMD, запланирован выход еще более производительного GPU MI400. 

2. Какие типы обучений могут быть эффективны на AMD?

За минувший год команда «красных» бросила максимум усилий на разработки в сфере ИИ. В определенных сценариях AMD может быть не только конкурентоспособной, но и предпочтительной платформой для обучения моделей машинного и глубокого обучения. Кстати, есть интересная статистика, которая показывает, что современные суперкомпьютеры (как направление MPP, так и Cluster) уже строятся на AMD/Epyc/RoCE.

2.1. Классическое машинное обучение (обучение на CPU + GPU)

Многие алгоритмы машинного обучения (такие, как регрессия, случайный лес, градиентный бустинг и методы опорных векторов) не требуют сложных тензорных вычислений и могут быть эффективно реализованы на AMD-системах. В этих случаях вычислительная мощность CPU и GPU играет важную роль, а такие библиотеки, как scikit-learn, XGBoost и LightGBM, могут использовать многопоточные вычисления на процессорах AMD EPYC и ускорение на видеокартах Radeon.

Применение AMD в классическом ML особенно актуально для обработки табличных данных в финансовых и эконометрических моделях, прогнозирования временных рядов (с использованием ARIMA, Prophet и других методов), оптимизации логистических процессов (включая анализ спроса и цепочек поставок), а также биоинформатики и анализа данных в медицинских исследованиях.

2.2. Глубокое обучение с использованием PyTorch и TensorFlow

Глубокое обучение требует интенсивных вычислений, и AMD постепенно улучшает поддержку своих ускорителей в этой области. Как мы уже говорили выше, ROCm (Radeon Open Compute) предоставляет инструменты для работы с PyTorch и TensorFlow, однако поддержка последнего ограничена по сравнению с NVIDIA CUDA. PyTorch имеет более стабильную интеграцию с AMD благодаря работе с HIP (Heterogeneous-Compute Interface for Portability), что позволяет эффективно обучать нейросети на видеокартах Radeon и Instinct. Однако TensorFlow на AMD может потребовать дополнительных оптимизаций и пока не имеет полного паритета с CUDA-версией.

В целом, можно уверенно сказать, что решения от AMD отлично покажут себя в обучении нейросетей среднего размера, таких как ResNet и EfficientNet. Также они подойдут для выполнения исследований в области NLP, но с дополнительными оптимизациями под ROCm, и даже для вычислительно сложных задач, если используется кластерная инфраструктура на базе AMD Instinct.

2.3. AMD в графических и мультимедийных нейросетях

Генеративные нейросети (такие, как Stable Diffusion, StyleGAN и ESRGAN) используют возможности GPU для рендеринга и обработки изображений. Благодаря архитектурам RDNA и высокой пропускной способности HBM-памяти, AMD может быть хорошим выбором для таких задач. Что же касается решений на базе архитектуры CDNA, которая используется в линейке AMD Instinct, – они ориентированы на высокопроизводительные вычисления и могут применяться в обучении нейросетей. В частности, в отличие от RDNA, CDNA оптимизирована для тензорных вычислений.

Решения на базе AMD применительно к графическим и мультимедийным нейросетям могут взять на себя обработку изображений и улучшение разрешения (суперразрешение, устранение шумов), генерацию видео и рендеринг сцен в реальном времени, AI-анализ видеопотоков (например, в системах безопасности и мониторинга), а еще их вполне можно использовать в 3D-анимировании и игровых разработках, где AI помогает создавать реалистичные текстуры и анимации.

2.4. Примеры из индустрии: кто использует AMD в AI?

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

Можно привести еще пару интересных примеров: в процессе написания статьи мы выяснили, что Ливерморская национальная лаборатория им. Э. Лоуренса (она же национальная лаборатория Министерства энергетики США) использует суперкомпьютер El Capitan на базе AMD для HPC-расчетов в AI. Знаменитая компания Tesla Motors разрабатывает технологии умного вождения без участия водителя с использованием AMD в бортовых системах. А еще в швейцарской высшей технической школе Цюриха с недавних пор исследуют возможности AMD в обучении моделей машинного обучения и физического моделирования.

3. Почему Fplus делает ставку на NVIDIA?

Fplus стремится предлагать своим клиентам наиболее производительные и надежные решения для обучения нейросетей. Вполне ожидаемо, что в условиях интенсивного роста AI-индустрии любой, кто обращается в нашу компанию, хочет получить проверенные технологии, которые обеспечивают максимальную совместимость с ведущими фреймворками, стабильную производительность и долгосрочную поддержку. Именно поэтому мы делаем ставку на NVIDIA как на ключевого поставщика графических ускорителей для AI-обучения.

3.1. Готовые серверные решения с видеокартами Nvidia

На текущий момент мы разрабатываем и поставляем серверные решения, полностью оптимизированные под оборудование NVIDIA. Это позволяет нашим клиентам без лишних сложностей развертывать инфраструктуру для машинного обучения, используя проверенные конфигурации. Среди решений Fplus, оптимизированных под видеокарты NVIDIA, можно выделить несколько ключевых моделей:

  • Восход – 2U-сервер с поддержкой до двух полноразмерных DW GPU, оснащенный специальным набором комплектующих.

  • Буран – сервер с поддержкой NVIDIA T4, хотя его основное предназначение не связано с интенсивными AI-вычислениями.

  • Спутник – платформа, рассчитанная на установку NVIDIA T4, однако для более масштабных задач Fplus разрабатывает профильное решение под AI – Спутник ИИ, который будет поддерживать до 8 двойных GPU.

3.2. Проверенная производительность и экосистема

Как мы уже выяснили выше по тексту, видеокарты NVIDIA предлагают лучшую производительность для AI-задач благодаря многолетним инвестициям в разработку CUDA, TensorRT и других оптимизированных решений. Глубокая интеграция с ведущими фреймворками делает работу с NVIDIA простой, удобной и эффективной. Для клиента это один из наиболее весомых доводов. Мало кто хочет заниматься сложными настройками, вкладывая дополнительное время и деньги в специфический продукт, которым пока что и является предложение от AMD. Запуски таких альтернатив могут позволить себе разве что крупные корпорации как Google или Meta².

3.3. Enterprise-уровень и сертифицированные решения

Серверные решения NVIDIA проходят строгую сертификацию и обладают долгосрочной поддержкой, что критично для корпоративных клиентов. Fplus использует только сертифицированное оборудование, что гарантирует стабильность, совместимость и высокий уровень надежности. Здесь, правда, можно обоснованно возразить, ведь AMD также предлагает сертифицированные серверные решения с поддержкой на уровне enterprise. Однако мы вернемся к истории о том, что экосистема AMD в сфере AI остается менее развитой по сравнению с NVIDIA, и ее востребованность - скорее исключения из правил или уникальный запрос.

3.4. Поддерживают ли решения Fplus видеокарты AMD?

Да, серверы Fplus поддерживают установку GPU AMD, но все настройки в этом случае остаются на стороне клиента, в то время как с NVIDIA все будет работать «из коробки» и без танцев с бубном. При этом заметим, что гарантийная поддержка распространяется только на ту комплектацию, которую Fplus поставляет заказчику, а гарантийный ремонт возможен исключительно для конфигураций, прописанных в договоре. 

Если вы самостоятельно устанавливаете видеокарты AMD Instinct и в процессе эксплуатации возникают какие-либо неисправности, компания в первую очередь проводит диагностику оборудования. В случае, если проблема связана с самой платформой, мы можем предложить устранение неисправностей. Однако если неисправность вызвана установленными клиентом видеокартами или как-то с ними связана, в сервисном обслуживании может быть отказано.

3.5. Можно ли приобрести сервер Fplus на базе AMD?

Важно понимать, что реализация серверных решений – это не просто передача оборудования клиенту, а комплексный процесс, включающий тестирование, постановку на производство, контроль качества, выходное тестирование и последующую поддержку. Каждый из этих этапов требует высокой степени стандартизации, что затрудняет гибкую кастомизацию решений под альтернативные GPU. Поэтому мы в Fplus ориентируется на NVIDIA, чья зрелая экосистема и стабильность делают процесс внедрения и обслуживания максимально эффективным.

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

Заключение

Раз NVIDIA доминирует, вполне логично, что мы в Fplus предлагаем своим клиентам серверные решения для задач, связанных с обучением нейросетей, которые построены на базе «зеленых» видеокарт. Напомним, что именно они на текущий момент обеспечивают лучшую совместимость с существующими AI-фреймворками и предлагают оптимизированные библиотеки для работы с машинным обучением (от старта исследований до развертывания коммерческих AI-продуктов). Как итог: клиенты Fplus получают надежные и масштабируемые мощности, которые позволяют запускать AI-модели с максимальной эффективностью, а также избавляют от необходимости в глубоком разбирательстве с тонкостями аппаратной и программной интеграции.

Но… поскольку видеокарты AMD продолжают развиваться и совершенствоваться, мы можем ожидать дальнейшего улучшения производительности, совместимости и внедрения в отрасли. Видеокарты AMD предлагают убедительную альтернативу NVIDIA, предоставляя исследователям, специалистам по данным и разработчикам больше выбора и возможностей для оптимизации рабочих процессов машинного обучения. Для широкого внедрения своих решений компании необходимо доработать программно-аппаратный стек, чтобы упростить адаптацию и повысить конкурентоспособность.

AMD потратила годы на разработку ROCm, который по сути является стандартным набором инструментов, библиотек, драйверов и компиляторов. Но… несмотря на запуск в 2016 году, платформа остается нишевой и отстает от конкурентов, таких как NVIDIA CUDA и Intel OneAPI (напомним, что CUDA была представлена в 2006 году и за почти 20 лет развития стала ключевой платформой для высокопроизводительных вычислений). В 2023 году AMD выпустила улучшенный программный стек ROCm 6-го поколения, который все еще ограниченно поддерживается даже на собственных GPU. 

По сути AMD серьезно застряла на уровне программирования и отстает от параллельной программной среды UXL Foundation, которая основана на OneAPI. Intel, например, активно развивает UXL Foundation и OneAPI, предоставляя универсальный инструмент для программирования под разные архитектуры (CPU, GPU, FPGA). Тем не менее, открытая архитектура ROCm соответствует стратегической цели AMD — обеспечивать совместимость с различными рабочими нагрузками. Остается вопрос: адаптируют ли разработчики свои решения под ROCm?

¹´² Компания Meta и ее продукты признаны экстремистскими и запрещены на территории РФ

Теги:
Хабы:
+3
Комментарии0

Публикации

Информация

Сайт
fplustech.ru
Дата регистрации
Дата основания
1992
Численность
1 001–5 000 человек
Местоположение
Россия