AMD делает процессоры все более устаревшими в играх
На GDC 2024 AMD только что расширила недавно анонсированный Microsoft Work Graphs API , и быстрая демонстрация показывает, насколько мощной может быть новая технология для игровой производительности. Итерация AMD перемещает вызовы отрисовки и узлы сетки от ЦП к графическому процессору, сокращая время, необходимое для выполнения этих задач. В результате AMD обнаружила значительное улучшение производительности — время рендеринга увеличилось на 64 % — при использовании рабочих графиков с сетчатыми шейдерами.
Microsoft представила рабочие графики как способ оптимизации процессов как в играх, так и в производительности, давая графическому процессору возможность планировать и выполнять задачи без предварительного взаимодействия с процессором. Он встроен в API Direct3D 12 и может устранить узкие места и повысить производительность в 3D-играх.
Добавление узлов сетки — это способ упростить рендеринг сложных форм и сцен за счет использования шейдеров сетки. По сути, это должно ограничить переключение между задачами рендеринга, оптимизировать процесс и повысить эффективность. Вызовы отрисовки, с другой стороны, относятся к запросам, отправленным к графическому процессору для рендеринга графики, и их обработка по отдельности также может повлиять на производительность.
«Узлы сетки расширяют рабочие графы, вводя новый тип листового узла, который управляет шейдером сетки и позволяет ссылаться на обычный графический PSO из рабочего графа. […] Теперь можно выполнить полную смену PSO! Эта функция называется узлами сетки, поскольку она позволяет рабочему графику передаваться непосредственно в шейдер сетки, превращая сам рабочий график в шейдер усиления на стероидах», — пишет Маттеус Хайдас, архитектор AMD, в сообщении блога AMD GPUOpen, ссылаясь на PSO (объекты состояния конвейера) по всему графическому конвейеру.
Чтобы продемонстрировать улучшения, AMD смогла поделиться некоторыми «сверхранними цифрами», которые сравниваются с использованием рабочих графиков и непрямым выполнением при использовании RX 7900 XTX . Execute Indirect — это функция современных графических API, таких как DirectX 12 и Vulkan, которая позволяет графическому процессору выполнять команды рисования или отправки — по сути, это еще одна вещь, которая позволяет графическому процессору обрабатывать некоторые рабочие нагрузки процессора вместо того, чтобы взаимодействовать с ним каждый раз. задача.
В этом раннем тесте AMD обнаружила, что Execute Indirect работает на 39% медленнее (в 1,64 раза), чем Work Graphs с расширением узлов сетки.
AMD также поделилась демо-версией , подготовленной командой Кобургского университета в Германии, которая демонстрирует эту функцию в режиме реального времени в сценарии 3D-игры.
Трудно предсказать влияние рабочих графиков, а также дополнений AMD к новой функции. Тем не менее, похоже, что это будет хороший способ для графического процессора взять на себя основную нагрузку в игровых сценариях, устраняя узкие места процессора и поддерживая системы с более слабыми процессорами. В качестве примера AMD использовала в своем тестировании процессор Ryzen 7 5800X, и это доказывает, что эти старые чипы могут принести наибольшую пользу.