Сегодня 29 марта 2024
18+
MWC 2018 2018 Computex IFA 2018
реклама
Видеокарты

Обзор видеокарт AMD Radeon RX 7900 XT и RX 7900 XTX: чиплеты в деле

⇣ Содержание

Архитектура RDNA подарила графическим картам AMD новую жизнь. Ускорители Radeon RX 5000 стали крупным явлением на массовом рынке своего времени и остаются мерилом быстродействия на доллар для новых продуктов. А благодаря следующей, 6000-й серии марка Radeon вновь заняла место на игровом олимпе. Однако у «красных» GPU были и хорошо известные слабости. По скорости трассировки лучей железо AMD могло соревноваться только с GeForce предыдущего поколения, но никак не с актуальными предложениями NVIDIA. Да и возможности быстрых матричных вычислений для масштабирования кадров при помощи ИИ, уже ставшей обязательным атрибутом современных графических процессоров, чипы Navi до сих пор не имели.

В видеокартах Radeon RX 7000 прошлые технические недостатки были устранены или по меньшей мере компенсированы путем глубокой переработки логики GPU. А в ситуации, когда старшие «зеленые» модели, GeForce RTX 4070 Ti и RTX 4080, не блещут производительностью (в пересчете на доллар цены) даже по тем ориентирам, которые раньше установила сама NVIDIA (только RTX 4090 выбивается из общего ряда, но она сама по себе чрезвычайно дорога), многие, как обычно, ждут, что придет AMD и все исправит. Ну что ж, посмотрим, смогла ли компания ответить на чаяния покупателей, недовольных лидером рынка.

А поскольку AMD замыкает годичный цикл релизов, выпустив новинки после того, как это сделали Intel и NVIDIA, мы воспользуемся такой возможностью, чтобы провести детальное сравнение конкурирующих архитектур. Но сначала обсудим главное нововведение, которым чипсет Navi 31 обогатил графические процессоры, ведь от любых предыдущих GPU он отличается тем, что это именно чипсет, который состоит из нескольких отдельных кристаллов.

#Первый чиплетный GPU

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

Графический процессор Navi 31, который лежит в основе первых видеокарт Radeon 7000-й серии, разделили на чиплеты по принципу, схожему с тем, как это сделано в десктопных процессорах Ryzen. Кристалл GCD (Graphics Compute Die) объединяет весь вычислительный конвейер и некоторые uncore-компоненты, включая контроллеры дисплея, PCI-Express и шины Infinity Fabric. В свою очередь, каждый из шести мелких кристаллов MCD (Memory Cache Die) содержит 16 Мбайт кеша третьего уровня и четыре 16-битных контроллера внешней памяти GDDR6. Чиплет GCD производится по новому техпроцессу TSMC N5 (разновидность которого под названием 4N также применяет NVIDIA для выпуска графических процессоров Ada Lovelace). В свою очередь, MCD довольствуются нормой N6 — ее AMD использовала ранее в чипах Navi 24 (десктопные видеокарты Radeon RX 6400/6500 XT и мобильные решения 6000-й серии).

Продолжая сравнение с центральными процессорами AMD, заострим внимание на том, что в Ryzen за счет чиплетов превосходно масштабируются именно главные вычислительные компоненты — то есть ядра x86, распределенные по чиплетам CCD (Core Complex Die), — в то время как логика Navi 31 осталась монолитной. Идея разбить «мозг» GPU на чиплеты заманчива и уже реализована в ускорителях вычислений AMD Instinct, но в существующем виде совершенно не подходит потребительским видеокартам, ведь каждый GCD все еще представляет собой независимый вычислительный конвейер со своим front-end’ом, а технологии CrossFire и SLI, которые вновь пришлось бы использовать для объединения GPU на программном уровне, плохо сочетаются с современным подходом к рендерингу, да и вообще официально мертвы.

Благодаря тому, что кеш L3 и контроллеры памяти Navi 31 отселили в собственные чиплеты, кристалл GCD получился очень компактным по меркам GPU высшего эшелона: всего 300 мм2. В свою очередь, один чиплет MCD имеет площадь 37 мм2, а в сумме получается 522 мм2 — почти столько же, сколько у флагманского чипа прошлого поколения, Navi 21 (519,8 мм2).

У нас нет информации из первых рук о плотности отдельных чиплетов, но, согласно сторонним источникам, компонентный бюджет GCD равен 45,7 млрд транзисторов, а MCD — 2,05 млрд. В целом Navi 31 содержит 57,7 млрд транзисторов (и это уже официальное число), вдвое больше 26,8 млрд Navi 21. Монолитный кристалл AD102 серии Ada от NVIDIA (GeForce RTX 4090) занимает 608,5 мм2 и состоит из 76,3 млрд транзисторов. Впрочем, более подходящим конкурентом для Navi 31 является AD103, который установлен в GeForce RTX 4080. Его параметры — 378,6 мм2 и 45,9 млрд.

Главной проблемой, которую предстояло устранить инженерам AMD для того, чтобы прийти к чиплетной организации GPU, были чрезвычайно высокие требования к пропускной способности и, как следствие, сложность межчиповых соединений. Стандартный органический субстрат, который чаще всего применяется для корпусировки центральных (включая Ryzen) и графических процессоров, не позволяет достигнуть необходимой плотности проводников. Одним из возможных решений задачи является хорошо знакомый нам по видеокартам Radeon R9 Fury и Radeon RX Vega кремниевый интерпозер — пассивный кристалл, превышающий по площади вместе взятые чиплеты. Либо, как разновидность кремниевого интерпозера, небольшой мостик, соединяющий GPU с памятью HBM в серверных ускорителях AMD Instinct MI200.

Однако кремниевый интерпозер представляет собой, по сути, еще один чип, что значительно удорожает производство. Альтернативной или сопутствующей технологией является многослойная (трехмерная) компоновка чиплетов, которую также активно применяет AMD, но для Navi 31 наиболее подходящим с экономической точки зрения признали третий вариант. Чиплеты GCD и MCD находятся в одной плоскости и связаны fanout-соединениями, которые подразумевают такую форму упаковки микросхем, как FOWFL (Fanout Wafer-Level Packaging). После нарезки из кремниевых пластин чиплеты точно фиксируют в нужном положении эпоксидным компаундом, а затем сверху наращивается слой RDL (Redistribution Layer) при помощи фотолитографических инструментов, что и дает чрезвычайно мелкий шаг проводников, выходящих за пределы площади каждой микросхемы (отсюда термин fanout). У TSMC как раз есть подходящее решение под маркой InFO-R, хотя официального подтверждения тому, что AMD использовала конкретно эту — одну из многих в арсенале TSMC — технологию, нет.

AMD смогла увеличить плотность соединений Navi 31 в 10 раз по сравнению с Ryzen в пересчете на пропускную способность и снизить энергопотребление на 80 % в пересчете на бит шины. По абсолютным оценкам, все каналы Infinity Fabric между чиплетом GCD и окружающими его MCD развивают пропускную способность в 5,3 Тбайт/с. Таких громадных чисел удалось достигнуть в первую очередь за счет широкого интерфейса: cудя по каналам между кешем L2 и L3, 2304 байт за такт. При этом неизвестно, является ли он параллельным на физическом уровне (это означает 18 432 проводника!), или же, что более вероятно, используется определенная форма SerDes (сериализации-десериализации), как в тех же Ryzen. В свою очередь, базовая частота Infinity Fabric возросла на 40 %, а максимальная, если высчитать из приведенных данных, составляет около 2,3 ГГц. Для сравнения: Infinity Fabric предыдущего флагманского GPU, Navi 21, работает на частоте вплоть до 1,94 ГГц и имеет пропускную способность в 1,99 Тбайт/с.

Что касается общей энергоэффективности чипсета Navi 31, то, по испытаниям AMD, он достигает на 30 % большей тактовый частоты, чем Navi 21, при равной мощности либо такой же тактовой частоты, потребляя вдвое меньше энергии. А в целом быстродействие на ватт должно увеличиться на 54 % благодаря еще и массе архитектурных изменений, каждое из которых мы разберем далее.

Front-end и шейдерный домен графического процессора теперь развязаны по тактовым частотам: ориентиром для первого компонента в паспортных характеристиках Radeon RX 7900 XTX является Boost Clock (2,5 ГГц), для второго — Game Clock (2,3 ГГц). Это консервативные значения в свете того, что для чипсета Navi 31, как утверждает AMD, и 3 ГГц — не предел. По слухам, масштабирование тактовой частоты сдерживает дефект первых версий кремния. С другой стороны, AMD таким образом ограничила аппетиты видеокарт: 7900 XTX довольствуется сравнительно низким напряжением питания и полной мощностью в 335 Вт, в то время как NVIDIA уже пробила планку 450 Вт.

#Архитектура RDNA 3 в общих чертах

GCD чипсета Navi 31 структурирован по таким же принципам, как кремний RDNA второго поколения (см. обзор Radeon RX 6800 и RX 6800 XT). Рассмотрим устройство GPU по направлению от front-end’а к back-end’у вычислительного конвейера и выделим первые изменения, которые отличают RDNA 3 от RDNA 2.

В начале цепочки находятся командные процессоры для шейдеров и вычислений общего назначения, аппаратный планировщик и геометрический процессор. Геометрический процессор RDNA 3 модифицировали таким образом, чтобы увеличить в 2,3 раза скорость обработки вызовов Multi-Draw Indirect. Последние представляют собой распространенный метод оптимизации рендеринга, когда вместо отдельных вызовов на отрисовку полигональных сеток приложение отдает лишь один, а такие задачи подготовки сцены, как отсечение невидимых сеток, GPU выполняет вместо центрального процессора.

Основной массив вычислительный логики RDNA сформирован несколькими крупными блоками Shader Engine, варьируя число которых AMD сможет получить GPU той или иной категории быстродействия на основе одного архитектурного шаблона. Каждый Shader Engine имеет собственный кеш первого уровня, блок примитивов, (ответственный за сборку треугольников из вершин и тесселяцию), растеризатор (осуществляет переход от операций над геометрическими данными к пиксельным), определенное число Compute Unit’ов и блоков операций растеризации (ROP). Последние замыкают конвейер рендеринга, определяя финальный цвет пикселов в кадровом буфере. Compute Unit, как и в прошлых итерациях RDNA, а до того — архитектуре GCN, несет всю нагрузку по исполнению шейдерных программ и фильтрации текстур.

Navi 31 содержит в общей сложности 96 CU против 80 в Navi 21. Таким образом, формула GPU пришла к 6144 шейдерным ALU (смотря как считать, но об этом позже) и 384 блокам наложения текстур. Но теперь CU распределены по шести SE вместо четырех, что обеспечивает лучший баланс между блоками примитивов и растеризаторами, с одной стороны, и шейдерным ядром, с другой.

Производитель
Название Navi 21 Navi 31
Где используется

Radeon RX 6800;

Radeon RX 6800 XT;

Radeon RX 6900 XT;

Radeon RX 6950 XT

Radeon RX 7900 XT;

Radeon RX 7900 XTX

Микроархитектура RDNA 2 RDNA 3
Техпроцесс TSMC N7 TSMC N5/N6
Число транзисторов, млрд 26,8 57,7
Площадь чипа, мм2 519,8 522
Число CU/WGP/SE
Compute Units (CU) 80 96
Workgroup Processors (WGP) 40 48
Shader Arrays (SA) Нет Нет
Shader Engines (SE) 4 6
Конфигурация Compute Unit
Векторные ALU 2 × 32 4 × 32
Скалярные ALU 2 2
Тригонометрические ALU 2 × 4 2 × 4
Блоки трассировки лучей (Ray Accelerators) 1 1
Блоки наложения текстур (TMU) 4 4
Векторные/скалярные регистры 1024/2560 1024/3840
Объем кеша L0, Кбайт 16 32
Конфигурация Workgroup Processor (WGP)
Объем Local Data Store (LDS), Кбайт 128 128
Объем кеша инструкций, Кбайт 32 32
Объем скалярного кеша, Кбайт 16 16
Программируемые вычислительные блоки
Векторные ALU 5 120 12 288
Скалярные ALU 160 192
Блоки трассировки лучей (Ray Accelerators) 80 96
Тригонометрические ALU 640 768
Блоки фиксированной функциональности
Блоки наложения текстур (TMU) 320 384
Блоки операций растеризации (ROP) 128 192
Блоки трассировки лучей (Ray Accelerators) 80 96
Конфигурация памяти
Объем кеша L1, Кбайт 1 024 3072
Объем кеша L2, Кбайт 4 096 6 144
Объем Infinity Cache, Мбайт 128 96
Разрядность шины RAM, бит 256 384
Тип микросхем RAM GDDR6 GDDR6
Интерфейс PCI Express 4.0 x16 4.0 x16

Кроме того, блоки примитивов научились отсекать невидимые треугольники вдвое быстрее и в общей сложности могут отдать для растеризации 12 треугольников за такт против 4 в Navi 21, а общий темп растеризации увеличился с 4 до 6 примитивов. Что касается соответствующих параметров «зеленых» графических процессоров, то каждый блок GPC (аналог Shader Engine в RDNA) получает 3 примитива после отсечения невидимых, а растеризатор, принадлежащий GPC, обрабатывает один примитив за такт. Во всяком случае, такова последняя информация со времен GeForce 20-й серии, но, коль скоро NVIDIA не сообщает о каких-либо изменениях в этой области, скорее всего, их и не было. В силу того, что шейдерный домен топовых GPU предшествующего и актуального поколения от NVIDIA состоит из 7 и 12 GPC соответственно, ранние этапы конвейера рендеринга у них сильнее по сравнению с Navi 31. Как бы то ни было, фреймрейт современных игр редко упирается в производительность блоков фиксированной функциональности, связанных с геометрией, поэтому создатели GPU уже перестали обращать на них повышенное внимание.

Наконец, каждый SE в Navi 31 по-прежнему содержит эквивалент 32 ROP (192 на весь GPU), а значит, пиксельный филлрейт увеличился в полтора раза вместе с количеством SE.

RDNA 3 содержит ряд оптимизаций, направленных на исполнение пиксельных шейдеров. Во-первых, OREO (Opaque Random Export Order). Архитектура RDNA 2 умеет исполнять пиксельные шейдеры вне очереди, но одна из финальных стадий рендеринга (Blend, смешивание цветов пикселов) должна происходить в порядке, определенном приложением. Чтобы сохранить очередность, в которой завершаются шейдеры, чипы RDNA 2 пользуются специальным буфером (Re-Order Buffer), в то время как RDNA 3 ведет журнал (scoreboard), позволяющий шейдерам записывать финальный результат вне очереди и без ожидания, когда речь идет о разных или непрозрачных поверхностях.

Во-вторых, RDNA 3 более гибко оперирует зависимостями между различными пиксельными шейдерами и операциями блоков фиксированной функциональности: в случае, когда один пиксельный шейдер или блок фиксированной функциональности ожидает результат другого пиксельного шейдера или блока фиксированной функциональности, работа может быть приостановлена, чтобы переключить логику на другие задачи.

#Вдвое больше шейдерных ALU (или нет?)

В Compute Unit’е RDNA 3 сконцентрированы наиболее существенные (в какой-то мере даже революционные для графических процессоров AMD) изменения архитектуры, но вместе с тем трудные для понимания неискушенной публикой и открытые для ложных интерпретаций — причем как в пользу, так и во вред AMD. Для начала вспомним, каким образом происходят вычисления в предыдущих версиях RDNA, а потом разберемся, что именно поменялось и как в результате чипы Navi третьего поколения соотносятся с актуальной логикой NVIDIA и Intel.

Compute Unit’ы представляют собой основные строительные блоки шейдерного домена и группируются попарно в так называемые WGP (Workgroup Processors) с общим массивом разделяемой памяти (LDS), кешем инструкций и скалярным кешем. В свою очередь, CU делится на две части, каждая из которых содержит следующие компоненты:

  • планировщик инструкций;
  • векторный блок SIMD32 из 32 ALU;
  • SIMD8 — блок из 8 ALU для тригонометрических операций;
  • один скалярный блок с собственным ALU (обслуживает операции условного перехода и ветвления);
  • два ALU для вычислений двойной точности (FP64).

RDNA работает с группами (wavefront’ами) из 32 потоков инструкций (wave32) таким образом, что планировщик отдает одну векторную инструкцию шириной в 32 рабочие единицы за такт, а блок SIMD32 также исполняет ее за один такт. В альтернативном режиме wave64 используется 64-поточный wavefront — такая инструкция как отдается, так и выполняется за два такта.

Тригонометрические инструкции и расчеты двойной точности движутся в сниженном темпе (4 и 16 тактов в формате wave32), но отдаются за один такт и, следовательно, могут происходить параллельно с работой SIMD32.

Отдача и исполнение скалярных инструкций протекает совершенно независимо от векторных в темпе одна инструкция за такт. Одна часть скалярного блока выполняет операции условного ветвления и некоторые типы синхронизации. Другая представляет собой целочисленное ALU, открывающее альтернативный путь исполнения инструкции wavefront’а в том случае, когда все из 32 или 64 рабочие единицы содержат однородные данные, и можно смело заменить их одной. Все эти процессы мы подробно разбирали в обзоре Radeon RX 5700 и RX 5700 XT.

Отдача инструкций в RDNA 1 и 2

Compute Unit архитектуры RDNA 1 или RDNA 2 содержит в общей сложности 64 векторных ALU и обладает пропускной способностью в 2 векторные инструкции wave32 за такт. Титульная особенность RDNA 3 заключается в том, что блок SIMD32 внутри каждой из двух секций CU дублирован, и, как следствие, пропускная способность увеличилась в два раза: либо сразу две инструкции wave32, либо одна wave64 за такт. Чтобы обеспечить новым ALU быстрый доступ к данным, объем векторных регистров (ближайшего к ALU и самого быстрого хранилища) также увеличили на 50 %. При этом один SIMD32 в секции сохранил возможность целочисленных расчетов (над данными INT32). Таким образом, с формальной точки зрения Compute Unit чипов AMD теперь стоит на одном уровне с аналогичным строительным блоком графических процессоров NVIDIA, который прошел такую же трансформацию ранее.

SM (Streaming Multiprocessor) «зеленой» архитектуры Ampere (серия GeForce 30) или Ada (GeForce 40) разделен на четыре секции. Каждая из них имеет собственный планировщик и два векторных блока SIMD16 по 16 шейдерных ALU каждый (в терминологии NVIDIA это 16 CUDA-ядер). Оба SIMD16 могут обрабатывать вещественночисленные данные (FP32), но только один из них — целочисленные (INT32). GPU от NVIDIA оперируют группами (warp’ами) из 32 потоков, при этом каждая инструкция warp’а отдается за один такт, но исполняется блоком SIMD16 за два, что позволяет инициализировать два SIMD16 по очереди, поддерживая параллелизм вычислений. Секция SM также содержит блок ALU SIMD4 для тригонометрических операций: соответствующие инструкции выполняются за 8 тактов и, следовательно, в параллельном режиме с работой двух SIMD16.

Таким образом, пропускная способность целого SM составляет 128 рабочих единиц FP32 или 64 FP32 + 64 INT32 — в точности как у Compute Unit’а архитектуры RDNA 3. Однако, в отличие от CU, секция SM лишена полноценного скалярного конвейера с независимой отдачей инструкций: такие инструкции исполняет блок специализированных ALU в темпе одна за два такта, но на их инициализацию тоже тратится один такт общего планировщика. За более подробной информацией рекомендуем вернуться к нашему разбору архитектуры Ampere. Следующее поколение чипов NVIDIA, Ada, не внесло в логику шейдерных расчетов никаких принципиальных изменений.

Streaming Multiprocessor в архитектуре NVIDIA Ada Lovelace

Что касается интеловских графических процессоров Arc на базе архитектуры Xe-HPG, то их шейдерное ядро существенно отличается от конкурирующих решений и (по крайней мере, в теории) является самым мощным на потребительском рынке. Xe-core (аналог Compute Unit в чипах AMD и SM в чипах NVIDIA) содержит 16 компонентов Xe Vector Engine. Каждый из них содержит блок SIMD8 для вещественночисленных расчетов и SIMD8 для целочисленных. В отличие от AMD и NVIDIA, Intel предпочитает группировать потоки инструкций в узкие wavefront’ы по восемь штук. При этом оба SIMD8 получают и исполняют инструкции одновременно. Конкуренция за такт планировщика для инициализации существует только между INT32-совместимым SIMD8 и привязанным к нему блоком SIMD2, который выполняет тригонометрические инструкции за четыре такта. Благодаря двум равноправным конвейерам FP32 и INT32 интеловский Xe-core развивает пропускную способность одновременно в 128 рабочих единиц того и другого типа, чем не может похвастаться ни «красный» Compute Unit, ни «зеленый» Streaming Multiprocessor.

Xe Vector Engine в архитектуре Intel Xe-HPG

В результате можно сказать, что по ключевым метрикам теоретического быстродействия шейдеров графический процессор Navi 31 совершенно не отстает от Ampere и Ada от NVIDIA и уступает лишь Intel Arc. Однако на практике все не так радужно, как в теории. Неспроста в паспортных характеристиках Radeon RX 7900 XTX фигурируют 6144, а вовсе не 12 288 шейдерных ALU.

Для того чтобы инициализировать удвоенный массив SIMD32, в RDNA 3 предусмотрен новый тип инструкций VOPD (Vector Operation Dual), который позволяет упаковать вместе две независимые векторные инструкции. Формат VOPD сам по себе накладывает определенные ограничения: не больше двух операндов на каждую инструкцию, что автоматически исключает некоторые из них, включая FMA (умножение-сложение с однократным округлением) без аккумулятора. FMA — та самая инструкция, которую используют все производители GPU для иллюстрации теоретического быстродействия в гигафлопсах, но, к счастью, далеко не единственная из тех, которые находят применение в графических шейдерах и вычислениях общего назначения.

Далее, VOPD лишь в очень немногих ситуациях подходит для вычислений сниженной точности (FP16), которые, помимо рабочих приложений, уже пригодились в играх. Набор команд RDNA 3 содержит лишь две соответствующие инструкции: расчет Dot2 (скалярного произведения и сложения с аккумулятором) FP16 или BF16, но они используются редко, главным образом в задачах машинного обучения. Как следствие, большинство операций половинной точности задействуют лишь один SIMD32. Тем не менее в самом выгодном случае речь идет об удвоенном темпе FP16 — при условии, что векторные SIMD’ы не занимаются никакой другой работой (поправка справедлива и для конкурирующих графических архитектур).

Compute Unit (AMD RDNA 1/RDNA 2)Compute Unit (AMD RDNA 3)Streaming Multiprocessor (NVIDIA Ampere)Streaming Multiprocessor (NVIDIA Ada Lovelace)Xe-core (Intel Xe-HPG)
Исполнительные блоки

2 × векторных SIMD32 (FP32/INT32);

2 × векторных SIMD8 (тригонометрические);

2 × скалярных ALU

2 × векторных SIMD32 (FP32/INT32);

2 × векторных SIMD32 (FP32);

2 × векторных SIMD8 (тригонометрические);

2 × скалярных ALU

4 × векторных SIMD16 (FP32/INT32);

4 × векторных SIMD16 (FP32);

4 × векторных SIMD4 (тригонометрические);

4 × скалярных ALU;

4 × тензорных ядра — эквивалент 4 × SIMD32 (FP16)

4 × векторных SIMD16 (FP32/INT32);

4 × векторных SIMD16 (FP32);

4 × векторных SIMD4 (тригонометрические);

4 × скалярных ALU;

4 × тензорных ядра — эквивалент 4 × SIMD32 (FP16)

16 × векторных SIMD8 (FP32);

16 × векторных SIMD8 (INT32);

16 × векторных SIMD2 (тригонометрические);

16 × XMX

Пропускная способность, рабочих единиц за такт

64 × FP32;

64 × INT32;

128 × FP16;

16 × тригон.

128 × FP32;

64 × INT32;

256 × FP16;

16 × тригон.

128 × FP32;

64 × INT32;

128 × FP16;

16 × тригон.

128 × FP32;

64 × INT32;

128 × FP16;

16 × тригон.

128 × FP32;

128 × INT32;

256 × FP16;

16 × тригон.

Пропускная способность матричных операций, FLOP за такт (FP16) Н/Д 512 1024 2048 2048

Добавим, что темп расчетов двойной точности (FP64) упал в два раза по сравнению с RDNA 2, т. к. из Compute Unit’a изъяли один FP64-совместимый ALU. Благо для потребительских видеокарт это не имеет ни малейшего значения — в отличие от следующего обстоятельства.

Дело в том, что VOPD представляет собой такую форму кодирования, как VLIW (Very Long Instruction Word) — этот термин узнают читатели, которые помнят архитектуру ATI/AMD до Radeon еще той, старой 7000-й серии — с присущими ей особенностями. Для комбинации в VOPD необходимо взять инструкции из одного и того же wavefront’а, однако не всякий код содержит широкие возможности для внеочередного исполнения. Задача извлечения ILP (параллелизма на уровне инструкций) ложится на компилятор — условие, которое погубило уже немало технических инноваций.

Сама AMD консервативно оценивает влияние архитектурных преобразований RDNA 3 на реальную игровую производительность: всего 17,4 % при сравнении ускорителей на базе Navi 31 и Navi 21 с одинаковой тактовой частотой. Затем AMD добавила, что кодирование VOPD само по себе ответственно лишь за 4-процентный рост фреймрейта в трассировке лучей. Последний результат нельзя слепо проецировать на любые другие задачи, и, разумеется, по мере совершенствования компиляторов графический процессор будет активнее задействовать новые ALU. Самым эффективным решением пока являются шейдеры, доработанные вручную, либо wavefront шириной в 64 потока, который позволяет вообще отказаться от VOPD. Как бы то ни было, итог один: полное «раскрытие потенциала» RDNA 3 займет какое-то время. Но, замечу справедливости ради, и чипы NVIDIA Ampere, в которых норма шейдерных ALU на SM также была удвоена, не стали от этого в два раза быстрее собственных предшественников. А в RDNA 3 дополнительная арифметика решает еще одну очень важную задачу.

#Матричные вычисления

Слабым местом графических процессоров AMD до сих пор было полное отсутствие специализированных механизмов для обработки данных нейросетями, в то время как NVIDIA выпустила на массовый рынок уже третье поколение GPU с тензорными ядрами, и Intel тоже сделала крупную ставку на матричную логику в чипах Arc. Благодаря архитектуре RDNA 3 видеокартам Radeon удалось хотя бы отчасти наверстать упущенное.

64 ALU удвоенного SIMD32 теперь могут быть целиком задействованы для умножения-сложения матриц (WMMA). В таком режиме каждый ALU на самом деле выполняет другие инструкции — Dot2 или Dot4 (скалярное произведение двух или четырех элементов матриц и последующее сложение с аккумулятором). Поддержка Dot2 и Dot4 уже появилась в RDNA второго поколения, но RDNA 3, во-первых, принимает матрицы с размерностью 16 × 16 × 16 непосредственно в качестве операндов, а во-вторых, пользуется двойным массивом шейдерных ALU и увеличенным регистровым файлом. Итоговая пропускная способность CU в инструкциях Dot2 (предназначенных для данных с плавающей запятой FP16, BF16 и целочисленных INT8) равна 128 за такт. В Dot4 (данные INT4) — 256.

AMD не приводит данных о быстродействии в пересчете на инструкции FMA (только о том, что новый GPU выполняет их в 2,7 раза быстрее, чем Navi 21) для того, чтобы RDNA 3 можно было напрямую сравнить с решениями конкурентов, однако число индивидуальных операций вывести нетрудно: так, функция Dot2 рассчитывается в четыре действия, что дает 512 FLOP на один CU. Если таким же образом разложить паспортные характеристики тензорных ядер в «зеленых» GPU, то матричная производительность потокового мультипроцессора Turing и Ampere составляет 1024 FLOP, а у Ada — 2048. При этом как RDNA 3, так и продукты NVIDIA не могут заниматься никакой другой работой при полной загрузке матричными вычислениями. Интеловский Xe-core не уступает SM чипов Ada по теоретической пропускной способности, однако имеет отдельное преимущество в том, что его матричные блоки инициализируются и работают параллельно с шейдерными ALU.

Как видите, AMD пока не удалось повторить достижения NVIDIA хотя бы четырехлетней давности, однако и то, что есть, — уже большой шаг вперед. Жаль только, что программная инфраструктура «красных» снова отстает от железа. Даже скромная матричная производительность, которой обладают Radeon RX 7000-й серии, могла бы существенно ускорить игровой рендеринг благодаря апскейлингу кадров на основе ИИ. Скорее всего, именно это произойдет в следующей, третьей версии алгоритма FSR, хотя AMD пока не признается, что FSR 3.0 задействует матричную логику RDNA 3.

#Трассировка лучей

Рейтрейсинг — другая сфера, в которой ускорители Radeon 6000-й серии не могли похвастаться высоким быстродействием, ведь логика фиксированной функциональности, необходимая для трассировки лучей в реальном времени, слабо развита у «красных» графических процессоров по сравнению с продуктами NVIDIA и Intel. Так, RT-блок в потоковом мультипроцессоре Ampere выполняет два пересечения луча с треугольником и одновременно — определенное число пересечений луча с боксом BVH, которое NVIDIA не разглашает, а в архитектуре Ada первое значение еще и удвоили. В свою очередь, интеловский Xe-core достигает результатов в 1 или 12 пересечений соответственно, также в параллельном режиме. Пропускная способность Compute Unit архитектуры RDNA 2 составляет одно пересечение луча с треугольником либо четыре пересечения с боксом BVH за такт. Наконец, чипы NVIDIA и Intel обсчитывают прохождение структуры BVH в железе, в то время как RDNA 2 полагается на шейдерные ALU.

Эта характеристика справедлива и для третьей версии RDNA. Но пусть чип Navi 31 не нарастил мускулов для трассировки лучей, имеющиеся ресурсы он расходует более экономно. Так, благодаря дополнительной контрольной логике AMD задает оптимальный порядок прохождения структуры для той или иной задачи: рендеринга теней, отражений и т. д.

В контексте интерфейса DXR графический процессор теперь поддерживает флаги индивидуальных лучей, которые позволяют форсировать ряд параметров (переопределять прозрачность, отбрасывать примитивы по их ориентации и т. д.), и аналогичные по назначению флаги узлов BVH, связанные с прозрачностью, чтобы избежать лишней работы. Кроме того, в наборе команд появились специальные инструкции, при помощи которых реализован стек указателей на узлы BVH в разделяемой памяти CU. Наконец, прямое влияние на скорость рейтрейсинга оказывает увеличенный в 1,5 раза объем векторных регистров CU.

RDNA 3 также пользуется неким двухступенчатым планировщиком, чтобы избежать хаотичных обращений к памяти при шейдинге разнородных материалов. Но описание этой технологии туманно, так что здесь мы не можем поделиться какими-либо подробностями.

Если верить оценкам AMD, тонкая настройка алгоритмов рейтрейсинга в сумме с сырой вычислительной мощностью GPU дала богатые плоды: по сравнению с Radeon RX 6950 XT быстродействие Radeon RX 7900 XTX в трассированных играх увеличилось на 80 %.

#Усиленный стек памяти

Апгрейд исполнительной логики RDNA повлек за собой изменения в объеме и пропускной способности, которые не обошли стороной ни один из уровней внутричиповой и внешней памяти GPU. Так, помимо дополнительных векторных регистров, принадлежащий каждому CU кеш нулевого уровня был увеличен с 16 до 32 Кбайт. В свою очередь, и объем кеша L1, к которому имеют равный доступ все CU в пределах Shader Engine, возрос с 256 до 512 Кбайт. Скорость каналов между хранилищами индивидуального CU и кешем первого уровня осталась прежней, но благодаря тому, что каждый Shader Engine содержит 16 вместо 20 CU, их общая пропускная способность в пределах GPU увеличилась с 4096 до 6144 байт за такт. Наконец, крупнейшим кешем чиплета GCD, L2, пользуются сами блоки Shader Engine. Его объем теперь составляет 6 Мбайт вместо 4 Мбайт в Navi 21, а общая пропускная способность (опять-таки вслед за количеством Shader Engine) стала в 1,5 раза выше.

Любопытно, что, несмотря на высокие аппетиты исполнительной логики, общий объем Infinity Cache, который теперь распределен по внешним чиплетам MCD, уменьшился с 128 Мбайт в Navi 21 до 96 Мбайт. Но этот факт уравновешивает более широкий канал между L2 и L3 — 2304 вместо 1024 байт за такт, — и сумасшедшие 5,3 Тбайт/с пропускной способности межчиплетного интерфейса Infinity Fabric. К тому же флагманский ускоритель AMD вновь использует широкий 384-битный интерфейс внешней памяти. Комбинированная пропускная способность GDDR6 с номиналом 20 Гбит/с на контакт шины и Infinity Cache у топовой модели Radeon RX 7900 XTX составляет 3,5 Тбайт/с. По этому поводу может возникнуть непонимание, ведь число 3,5 Тбайт/с значительно меньше физической скорости Infinity Fabric, но здесь принимается поправка на долю попаданий в кеш: исходя из приведенных чисел, расчеты дают 58–59 % — в точности как у Navi 21 при игре в 4К согласно прошлым испытаниям AMD. То есть меньший объем L3 дополнительно компенсируют еще и отточенные алгоритмы кеширования.

Ускорители Radeon вслед за решениями нового поколения от NVIDIA и Intel продолжают использовать PCI Express 4.0. Хотя десктопные центральные процессоры уже поддерживают пятое поколение системной шины, подходящих видеокарт мы не увидим до следующего обновления архитектуры.

#Контроллеры дисплея и видеокодек

Среди графических процессоров нового поколения только Navi 31 может похвастаться нативной совместимостью с последними версиями обоих интерфейсов вывода изображения: DisplayPort 2.1 и HDMI 2.1. Первый благодаря втрое большей скорости передачи данных по сравнению с DisplayPort 1.4a рассчитан на громадные разрешения вплоть до 16К. Navi 31 использует только 54 Гбит/с из теоретически возможных 77,37, а максимальными параметрами одного дисплея является разрешение 8К и частота 165 Гц (с компрессией DSC). Для домашних мониторов и это, разумеется, дело будущего, однако современные экраны с вполне осязаемыми параметрами тоже могут воспользоваться пропускной способностью DisplayPort 2.1. К примеру, режим 4К с частотой обновления 120 Гц и HDR уже лежит за пределами возможностей DisplayPort 1.4a без применения DSC или цветовой субдискретизации.

В то же время ускорители GeForce 40-й серии по-прежнему оснащаются контроллерами DisplayPort 1.4a. Видеокарты Intel Arc, с другой стороны, поддерживают DisplayPort 2.1, но HDMI в них ограничен спецификацией 2.0, а совместимость с HDMI 2.1 реализована при помощи дискретного конвертера.

AMD также подтянула скромные на фоне конкурентов возможности интегрированного ASIC для обработки видео: появилась функция кодирования AV1 с производительностью вплоть до 60 FPS при разрешении 8К, а пиковая скорость декодирования AV1 и кодирования либо декодирования двух других форматов — H.264 и HEVC — увеличилась сразу в 2–3 раза. Кроме того, H.264 и HEVC теперь можно кодировать или декодировать двумя независимыми потоками.

#Технические характеристики, цены

Чипсет Navi 31 представляет революционный для графических процессоров физический дизайн и массу внутренних усовершенствований по сравнению с кремнием Navi второго поколения — в сумме это наиболее масштабные изменения, которые претерпели «красные» GPU с основания архитектуры RDNA. Но если копнуть глубже, AMD еще не удалось до конца преодолеть отставание от чипов NVIDIA в таких ключевых аспектах, как эффективность шейдерного ядра, логики матричных вычислений и рейтрейсинга. Да и по формальным количественным признакам Navi 31 уступает AD102 — топовому GPU семейства Ada. Впрочем, очередной претендент на статус самого производительного графического процессора — это совсем не то, чего сейчас требуют покупатели видеокарт. Что нужно геймерам, так это достаточно быстрый ускоритель, который обеспечит уверенный рост игрового фреймрейта на единицу стоимости без скрытой наценки за новые функции.

Компания представила два продукта на основе Navi 31. Топовая модель, Radeon RX 7900 XTX, комплектуется полностью функциональным GPU со следующей формулой исполнительных блоков: 6 144 (или 12 288, если считать удвоенные SIMD32) FP32-совместимых шейдерных ALU, 384 блока наложения текстур и 192 ROP. Ориентировочная тактовая частота в играх (Game Clock), равная 2 269 МГц, относится к шейдерному домену GPU, в то время как оппортунистическая частота шейдеров (Boost Clock) в 2 499 МГц является нормой для front-end’a Navi 31. Устройство комплектуется 24 Гбайт памяти GDDR6 с пропускной способностью 20 Гбит/с на контакт 384-битной шины. Полностью разблокированный чипсет Navi 31 также имеет 96 Мбайт внутреннего кеша третьего уровня. Резерв потребляемой мощности Radeon RX 7900 XTX составляет 335 Вт.

В свою очередь, конфигурация Radeon RX 7900 XT лишилась 12 из 96 CU и, как следствие, включает 5 376 (10 752) шейдерных ALU, 336 блоков наложения текстур, но по-прежнему 192 ROP. Один из шести чиплетов MCD вместе со своими контроллерами памяти и сегментом Infinity Cache у младшей модели не активен. Как следствие, объем L3 составляет 80 Мбайт, а разрядность шины VRAM — 320 бит. Radeon RX 7900 XT имеет 20 Гбайт памяти GDDR6 того же номинала, что и флагман, — 20 Гбит/с. Game Clock и Boost Clock графического процессора установлены на уровне 2 025 и 2 394 МГц, а потребляемая мощность не превышает 315 Вт.

ПроизводительAMD
Модель Radeon RX 6800 Radeon RX 6800 XT Radeon RX 6900 XT Radeon RX 6950 XT Radeon RX 7900 XT Radeon RX 7900 XTX
Графический процессор
Название Navi 21 XL Navi 21 XT Navi 21 XTX Navi 21 KXTX Navi 31 XT Navi 31 XTX
Микроархитектура RDNA 2 RDNA 2 RDNA 2 RDNA 2 RDNA 3 RDNA 3
Техпроцесс, нм TSMC N7 TSMC N7 TSMC N7 TSMC N7 TSMC N5/N6 TSMC N5/N6
Число транзисторов, млрд 26,8 26,8 26,8 26,8 57,7 57,7
Тактовая частота, МГц: Base Clock / Game Clock / Boost Clock 1 700/1 815/2 105 1 825 /2 015/2 250 1 825 /2 015/2 250 1925 /2 100/2 310 1 500 /2 025/2 394 1 855 /2 269/2 499
Шейдерные ALU FP32 3 840 4 608 5 120 5 120 5 376 (10 752) 6 144 (12 288)
Блоки наложения текстур (TMU) 240 288 320 320 326 384
Блоки операций растеризации (ROP) 96 128 128 128 192 192
Оперативная память
Разрядность шины, бит 256 256 256 256 320 384
Тип микросхем GDDR6 SGRAM GDDR6 SGRAM GDDR6 SGRAM GDDR6 SGRAM GDDR6 SGRAM GDDR6 SGRAM
Тактовая частота, МГц (пропускная способность на контакт, Мбит/с) 2 000 (16 000) 2 000 (16 000) 2 000 (16 000) 2 250 (18 000) 2 500 (20 000) 2 500 (20 000)
Объем, Мбайт 16 192 16 192 16 192 16 192 20 480 24 576
Объем Infinity Cache, Мбайт 128 128 128 128 80 96
Шина ввода/вывода PCI Express 4.0 x16 PCI Express 4.0 x16 PCI Express 4.0 x16 PCI Express 4.0 x16 PCI Express 4.0 x16 PCI Express 4.0 x16
Производительность
Пиковая производительность FP32, GFLOPS (из расчета максимальной указанной частоты) 16 166 20 736 23 040 23 654 25 740 (51 481) 30 708 (61 116)
Производительность FP64/FP32 1/16 1/16 1/16 1/16 1/32 (1/64) 1/32 (1/64)
Производительность FP16/FP32 2/1 2/1 2/1 2/1 2/1 2/1
Пропускная способность оперативной памяти, Гбайт/с 512 512 512 576 800 960
Вывод изображения
Интерфейсы вывода изображения DisplayPort 1.4, HDMI 2.1 DisplayPort 1.4, HDMI 2.1 DisplayPort 1.4, HDMI 2.1 DisplayPort 1.4, HDMI 2.1 DisplayPort 2.1, HDMI 2.1a DisplayPort 2.1, HDMI 2.1a
TBP/TDP, Вт 250 300 300 335 315 335
Розничная цена (США, без налога), $ 579 (рекоменд. на дату выхода) 649 (рекоменд. на дату выхода) 999 (рекоменд. на дату выхода) 1 099 (рекоменд. на дату выхода) 899 (рекоменд. на дату выхода) 999 (рекоменд. на дату выхода)
Розничная цена (Россия), руб. Н/Д Н/Д Н/Д Н/Д Н/Д Н/Д

Основного конкурента Radeon RX 7900 XTX компания видит в GeForce RTX 4080. RX 7900 XTX сулит лучшие результаты в играх без рейтрейсинга, хотя его рекомендованная стоимость ниже: $999 против $1 199. В свою очередь, Radeon RX 7900 XT поступил в продажу по MSRP в $899 и должен занять промежуточное положение между GeForce RTX 4070 Ti ($799) и RTX 4080, ближе к последнему. Что касается трассировки лучей, то AMD не претендует на равенство с NVIDIA в этой дисциплине, но отставание уже не должно быть настолько катастрофическим, как раньше.

Заметим, что Radeon RX 7900 XTX не стал дороже, чем старшая модель, которая открыла 6000-ю серию, Radeon RX 6900 XT, и стоит меньше Radeon RX 6950 XT ($1 099). Что ж, AMD удалось повысить быстродействие на доллар хотя бы по формальным характеристикам GPU и результатам собственных бенчмарков. А вот к позиционированию Radeon RX 7900 XT есть вопросы. В прошлом поколении рекомендованные цены топовой (RX 6900 XT) и предтоповой (RX 6800 XT) видеокарты различались на $350. Теперь за сумму в $799, то есть почти 90 % стоимости флагмана, RX 7900 XT располагает лишь 84 % его теоретического быстродействия, не говоря уже об урезанном объеме VRAM.

Рынок еще плохо насыщен новыми видеокартами AMD, а российский — тем более. Radeon RX 7900 XTX при минимальной стоимости 114 010 руб. (в период работы над обзором) сейчас дороже GeForce RTX 4080 (от 100 990 руб.). В свою очередь, Radeon RX 7900 XT стоит как минимум 99 736 руб., а GeForce RTX 4070 Ti — 80 008. Важно и то, что речь идет о референсных моделях в упаковке тех или иных вендоров. Но со времен релиза 7000-й серии уже поступило немало сообщений о дефекте референсной системы охлаждения, который вызывает перегрев GPU при эксплуатации в типичном горизонтальном положении. Никто не знает, как много бракованных устройств попало в розницу, и все же, пока AMD не устранит проблему, более надежным выбором станет какая-либо из партнерских версий. Две такие видеокарты, от SAPPHIRE, мы и рассмотрим в обзоре.

Следующая страница →
 
⇣ Содержание
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
Вечерний 3DNews
Каждый будний вечер мы рассылаем сводку новостей без белиберды и рекламы. Две минуты на чтение — и вы в курсе главных событий.
window-new
Soft
Hard
Тренды 🔥