AMD против NVIDIA: споры о «настоящих» вычислениях FP64 в научных симуляциях

AMD против NVIDIA: споры о «настоящих» вычислениях FP64 в научных симуляциях

Вычисления с плавающей запятой двойной точности (также известные как FP64) — это то, что удерживает современные самолеты в небе, ракеты на орбите, эффективные вакцины и, да, ядерное оружие. Но вместо создания специализированных чипов, которые обрабатывают этот базовый тип данных на аппаратном уровне, NVIDIA делает ставку на эмуляцию для повышения производительности приложений HPC и научных вычислений — области, в которой AMD лидирует на протяжении последних нескольких поколений.

Вместо создания специализированных чипов для аппаратных FP64-расчетов NVIDIA использует эмуляцию для повышения производительности HPC в ускорителях искусственного интеллекта, пишет The Register. Компания отказалась от разработки блоков FP64 в поколении Blackwell Ultra, а последние ускорители Rubin имеют заявленную максимальную производительность векторных вычислений с FP64 в 33 Тфлопс, в то время как выпущенный четыре года назад H100 имел 34 Тфлопс, а Blackwell — около 40 Тфлопс.

Если в библиотеках NVIDIA CUDA включена программная эмуляция, ускоритель, как утверждается, сможет достичь производительности до 200 Тфлопс при матричных вычислениях FP64. Впрочем, Blackwell с эмуляциями и в этом случае способен достичь производительности до 150 Тфлопс, а у Hopper были «честные» 67 Тфлопс.

«В ходе многочисленных исследований с партнерами и наших собственных внутренних исследований мы обнаружили, что точность, достигаемая с помощью эмуляции, по крайней мере, так же хороша, как точность, получаемая с помощью аппаратных тензорных ядер»,

Дэн Эрнст, старший директор по суперкомпьютерным продуктам NVIDIA, рассказал The Register.

В свою очередь, в AMD считают, что это утверждение верно не во всех сценариях.

«Он работает довольно хорошо в некоторых тестах, но это не заметно в реальных физических симуляциях».

сказал Николас Малайя, научный сотрудник AMD.

Он высказал мнение, что, хотя эмуляция FP64, безусловно, заслуживает дальнейших исследований и экспериментов, такое решение еще не готово к широкому использованию. Сама AMD исследует возможность программной эмуляции FP64 на Instinct MI355X, чтобы определить области его возможного применения.

Хотя типы данных с более низкой точностью все чаще используются в микросхемах, FP64 остается золотым стандартом для научных вычислений. и не зря – FP64 не имеет себе равных по динамическому диапазону. С другой стороны, современные LLM обучаются с использованием вычислений FP8, а компактные типы данных MXFP8/MXFP4 или NVFP4 допускают достаточный диапазон значений для AI. Это хорошее решение для нечеткой математики больших языковых моделей, но оно не является заменой FP64 для HPC. Рабочие нагрузки искусственного интеллекта обладают высокой отказоустойчивостью, а задачи высокопроизводительных вычислений требуют высокой точности.

AMD заявила, что эмуляция NVIDIA FP64 не полностью соответствует стандарту IEEE.. Алгоритмы NVIDIA не учитывают такие понятия, как положительные и отрицательные нули, ошибки NaN (не число) и ошибки бесконечного числа. Из-за этого небольшие ошибки в промежуточных расчетах, используемых для имитации более высокой точности, могут привести к искажениям, которые влияют на точность конечного результата, пояснил Малайя. По его словам, целесообразность использования эмуляции FP64 зависит от конкретного приложения.

Сравнение

Эмуляция FP64 наиболее успешно работает для хорошо обусловленных задач, где небольшие изменения «входных данных» приводят к небольшим изменениям конечного результата. Тест Linpack (HPL) является ярким примером такой проблемы.

«Но если вы посмотрите на материаловедение, коды расчета горения, ленточно-матричные системы и т. д., вы увидите, что это гораздо менее подготовленные системы, и внезапно все начинает давать сбой»,

он также сказал.

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

«У нас есть данные, показывающие, что алгоритму Одзаки требуется примерно вдвое больше памяти для эмуляции матриц FP64», — сказал он.

— говорит Малайя.

Поэтому компания готовит специализированные ускорители. МИ430Х с повышенной производительностью FP64/FP32, но учёные опасаются, что к ним может не быть большого интереса, поскольку ускорители ИИ приносят больше денег.

Эрнст говорит, что для большинства специалистов по HPC неполное соответствие IEEE не является большой проблемой. Это во многом зависит от конкретного приложения. Однако NVIDIA разработала дополнительные алгоритмы для обнаружения и уменьшения вышеупомянутых ошибок и неэффективных операций эмуляции.. Эрнст также допускает, что использование эмуляционной памяти может быть немного выше, но подчеркивает, что этот перерасход связан с вычислениями, а не с самим приложением — в большинстве случаев это матрицы размером не более нескольких ГБ.

Однако ничто из этого не меняет того факта, что эмуляция полезна только для подмножества задач HPC, основанных на операциях умножения плотных матриц (DGEMM). По словам Малайи, для 60–70% рабочих нагрузок высокопроизводительных вычислений эмуляция дает мало пользы или вообще ее не дает. «По нашей оценке, подавляющее большинство реальных рабочих нагрузок высокопроизводительных вычислений основано на векторном умножении (FMA), а не на DGEMM», — говорит он, отмечая, что это действительно нишевый сегмент, хотя и занимающий немалую долю рынка. Для векторных рабочих нагрузок, таких как вычислительная гидродинамика (CFD), ускорители Rubin будут продолжать использовать медленные векторные блоки FP64.

` ); const randomIndex = Math.floor(Math.random() * Banners.length); document.getElementById(‘kaldata-random-banner’).innerHTML = баннеры(randomIndex); })();

Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии