Анализ: может ли архитектура Ampere использоваться для видеокарт GeForce?

Опубликовано:

nvidia-a100На презентации GPU GA100 с новыми ядрами Tensor NVIDIA раскрыла некоторые детали архитектуры Ampere. Но теперь опубликованы технические подробности, что позволяет дополнить нашу статью. Ниже мы расскажем об архитектуре Ampere в GA100.

Архитектура Ampere является новым подходом NVIDIA к балансировке требований GPU. Но пока неизвестно, останется ли архитектура Ampere только для дата-центров, или она распространится на сегменты рабочих станций и игр. GA100 GPU имеет площадь 826 мм² и число транзисторов 54 млрд.

Чип GA100 GPU состоит из восьми кластеров GPCs (Graphics Processing Clusters), восьми кластеров TPCs (Texture Processing Clusters) на GPC и двух SMs (Streaming Multiprocessor) на TPC, что дает 16 SMs на GPC, в сумме 128 SMs на полном GA100 GPU. Но поскольку NVIDIA пока представила Tesla A100 на GA100 GPU, где насчитывается 108 SMs.

Для архитектуры Ampere NVIDIA продолжает оснащать каждый SM 64 потоковыми процессорами. В результате для 128 SM мы получаем 8.192 потоковых процессора. Кроме 64 вычислительных блоков FP32 на SM, можно отметить и 64 блока INT32 на SM. Также каждый SM содержит 32 вычислительных блока FP64 и четыре новых ядра Tensor третьего поколение. Сравнение вычислительных архитектур Ampere, Volta и Turing мы провели в первой статье.

Сравнение архитектур
  Полный GA100A100
GPU GA100GA100
SMs 128108
Ядра FP64 / SM 3232
Ядра FP64 / GPU 4.0963.456
Ядра FP32 / SM 6464
Ядра FP32 / GPU 8.1926.912
Ядра INT32 / SM 6464
Ядра INT32 / GPU 4.0963.456
Ядра Tensor / SM 44
Ядра Tensor / GPU 512432
Память 6 стеков HBM2
6.144 бит
1.920 Гбайт/с
5 стеков HBM2
5.120 бит
1.555 Гбайт/с

NVIDIA использует всего порядка 85% ресурсов GA100 GPU для чипов A100, что намного меньше GV100 GPU в составе ускорителей Tesla V100, у которых используются 80 или 84 SM. Причина, скорее всего, кроется в доле выхода годных кристаллов. Вряд ли можно произвести полнофункциональный чип подобного размера. Поэтому NVIDIA приходится отключать участки из-за дефектов.

Что повлияло и на подключение памяти. GA100 GPU содержит 12 контроллеров памяти. К двум контроллерам подключено по чипу памяти HBM2. Для Tesla A100 NVIDIA использует шину памяти шириной лишь 5.120 бит, то есть десять контроллеров памяти и пять чипов из шести. Что как раз и дает емкость памяти 40 Гбайт (5x 8 Гбайт).

Тактовая частота памяти HBM2 составляет 1.250 МГц. Что дает пропускную способность 5.120-битной шины Tesla A100 1.555 Гбайт/с. В полной конфигурации на 1.250 МГц мы бы получили 1.920 Мбайт/с на 6.144 битах.

Произошли изменения и внутри SM. Число блоков FP32 и INT32 не изменилось. Но следует отметить новые функции ядер Tensor третьего поколения. Например, они могут выполнять 256 операций FP16/FP32 Mixed Precision Fused Multiply-Add (FMA) за такт. У ядер Tensor архитектур Volta и Turing производительность составляла 64 подобных операции FMA за такт. NVIDIA уполовинила число ядер Tensor на SM, но в итоге удвоила вычислительную производительность. Кроме того, новые ядра Tensor могут выполнять вычисления FP64, что и далее увеличивать производительность чипа.

Мы уже рассмотрели некоторые детали формата TF32 и операций Sparsity/Sparse Matrix. Они тоже вносят свой вклад в повышение вычислительной производительности архитектуры Ampere.

Произошли изменения в архитектуре кэшей. Например, NVIDIA увеличила кэш данных и инструкций L1 до 192 кбайт. Что соответствует увеличению на 50%. Также NVIDIA увеличила кэш L2 до 48 Мбайт (для полной версии GA100 GPU). Tesla A100 GPU в итоге получает 40 Мбайт кэша L2. У Volta, а именно GV100 GPU, размер был намного меньше - 6.144 кбайт. NVIDIA разделила кэш L2 на два блока. Каждый из них содержит только данные подключенных к кэшу GPC. Такое разделение позволило NVIDIA увеличить пропускную способность L2 в 2,3 раза. А также снизить задержки.

Есть изменения и в иерархии кэша. Поддержка асинхронных команд сняла некоторые зависимости между отдельными компонентами и ускорила доступ к кэшам. Например, асинхронное копирование может загружать данные из видеопамяти напрямую в общую память, минуя кэш L1. И регистрам больше не нужно выполнять промежуточное хранение данных, что снижает задержки и увеличивает доступную пропускную способность.

Можно ли сделать выводы о производных GeForce?

Самый большой вопрос заключается в том, можно ли ожидать после архитектуры Ampere новых моделей GeForce на ней? Чтобы ответить на этот вопрос, сначала нужно узнать, планирует ли NVIDIA расширять архитектуру Ampere на игровой рынок. По данному вопросу NVIDIA до сих пор не высказалась.

В своем докладе Дженсен Хуан не дал никакой конкретики по этому вопросу. На пленарном докладе звучали рынки HPC, ИИ и беспилотных автомобилей.

Если судить по имеющимся данным, SM Ampere по-прежнему имеют 64 блока FP32 и INT32, как и в архитектуре Turing. Так что здесь потоковые процессоры могут обеспечить должный уровень производительности. Одновременные вычисления данных INT32 и FP32 существенно ускорили работу Turing SM, поскольку в играх обычно треть расчетов занимают INT32, и теперь конвейер рендеринга к ним лучше подготовлен. Но те же блоки FP64 кажутся для GeForce GPU избыточными.

Если взять за основу TU102 GPU видеокарты GeForce RTX 2080 Ti с 4.352 потоковыми процессорами, то GA100 GPU даже всего с 108 SM обеспечит на 58% больше потоковых процессоров. То есть можно говорить о теоретическом приросте производительности 58%. Но вряд ли NVIDIA будет использовать Ampere GPU на данном уровне расширения даже для самых мощных видеокарт GeForce. Но все равно можно ожидать существенное повышение производительности из-за увеличения числа SM и, следовательно, потоковых процессоров. SM архитектуры Ampere оснащены четырьмя текстурными блоками каждый. Так что архитектура Ampere соответствует базовым требованиям для конвейера рендеринга.

Чистая производительность - это хорошо, но GPU должен получать достаточно данных. NVIDIA разделила кэш L2 GA100 GPU на две части, увеличив пропускную способность и снизив задержки. Кэш L2 отделен от GPC, как уже было в случае Turing. Но он теперь намного крупнее - а именно, в восемь раз. Для видеокарт GeForce подобный размер вряд ли нужен. Возможно, емкость кэша L2 станет отличительной особенностью между дизайнами архитектуры Ampere для игр и HPC.

Остается открытым вопрос насчет наличия ядер RT. Они очень важны для будущих видеокарт GeForce, поскольку NVIDIA как раз желает увеличить производительность RT. Слухи говорят об увеличении производительности RT в четыре раза. На диаграмме NVIDIA ядра RT не показаны. Похоже, что у GA100 GPU нет специальных аппаратных ускорителей, хотя для конвейера рендеринга другие функциональные блоки есть. Но видеокарта GeForce на текущем дизайне GA100 GPU точно не выйдет. В отношении модуля A100 NVIDIA сказала следующее:

"Because the A100 Tensor Core GPU is designed to be installed in high-performance servers and data center racks to power AI and HPC compute workloads, it does not include display connectors, NVIDIA RT Cores for ray tracing acceleration, or an NVENC encoder."

Таким образом, Tesla A100 или A100 Tensor Core GPU, как NVIDIA называет свой графический процессор, не имеет видеовыходов. Также нет блока NVENC и ядер RT.

Не менее важны здесь такие факторы, как память и интерфейс. HBM2 стоит слишком дорого для потребительского рынка, как по цене чипов, так и себестоимости реализации на подложке. Из-за более широкой шины памяти требуется намного больше физических соединений. Что требует пространства и увеличивает стоимость решения. По этой причине для видеокарт GeForce NVIDIA использовала память GDDR6, что наверняка продолжится и в будущем. Поэтому у младших чипов GA10x мы наверняка увидим другой интерфейс памяти.

Предварительное заключение

По представленной вчера информации довольно сложно делать какие-либо предположения насчет возможных видеокарт GeForce на архитектуре Ampere и "младших" версиях GA100 GPU. За исключением отсутствия ядер RT, новые SM вполне могут послужить основой для игровых GPU.

Мы пока воздержимся от комментирования слухов о возможных младших GA10x GPU. Здесь можно рассуждать о возможных конфигурациях GPC и TPC, но сути это меняет.

GA100 GPU содержит много разных компонентов, которые видеокартам GeForce не нужны: интерфейс памяти HBM (вместо нее будет использоваться GDDR6), блоки FP64, слишком большой кэш L2 и NVLink PHY. С другой стороны, часть необходимых компонентов отсутствуют, как те же ядра RT и блок NVENC.

Наконец, 7-нм GPU с площадью более 800 мм² и памятью HBM2 будет слишком дорогим, чтобы использовать его в сегменте игровых видеокарт GeForce. Архитектура NVIDIA Ampere действительно сделана более гибкой, что позволяет адаптировать ее для разных сценариев дата-центров, но это отнюдь не означает использования в игровых видеокартах GeForce. Скорее всего, во второй половине 2020 нас ждет преемник Turing на другой архитектуре или переработанной Ampere.

Подписывайтесь на группы Hardwareluxx ВКонтакте и Facebook, а также на наш канал в Telegram (@hardwareluxxrussia).