Shader Execution Reordering повышает производительность GeForce RTX 4090 на 40%, а на видеокартах Intel Arc B на 90%

от aadmin

Компания Microsoft официально подтвердила выпуск функции Shader Execution Reordering (SER) для трассировки лучей в DirectX. Нововведение опубликовано в блоге разработчиков DirectX и призвано решить проблему неравномерной нагрузки при трассировке лучей.

Microsoft выпустила улучшенную версию Agility SDK с поддержкой Shader Model 6.9, DXR 1.2 и DX12

Shader Execution Reordering (SER) — это дополнение к DirectX Raytracing (DXR). Функция позволяет шейдерному коду сигнализировать аппаратному обеспечению о согласованности лучей. Благодаря этому графический процессор может сортировать задачи для более эффективного параллельного выполнения.

Microsoft отмечает, что SER решает проблему расхождения в выполнении шейдеров и доступе к данным в приложениях DXR. Трассировка лучей — стохастический процесс, из‑за чего нагрузка на GPU распределяется неравномерно. SER добавляет в HLSL примитивы, которые дают возможность менять порядок выполнения операций в соответствии с требованиями приложения. Это улучшает производительность и согласованность данных.

Поддержка SER — обязательная функция для Shader Model 6.9. Это значит, что драйверы должны обеспечивать работу с шейдерным кодом, использующим SER. При этом реальное ускорение зависит от аппаратной поддержки со стороны видеокарты.

Microsoft разместила в репозитории DirectX‑Graphics‑Samples минимальную демонстрационную версию SER под названием D3D12RaytracingHelloShaderExecutionReordering. Пример показывает:

  • полноэкранный четырёхугольник;
  • искусственное расхождение лучей с помощью «лёгкой» и «тяжёлой» шейдерной работы (тяжёлая работа визуализируется в виде вертикальных полос).
Рекомендую посмотреть
Epic Games выпустила обновление Unreal Engine 5.7.2 с множеством исправлений

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

Инженеры Microsoft провели тесты на разных графических процессорах и зафиксировали значительный прирост частоты кадров:

  • на NVIDIA GeForce RTX 4090 частота кадров выросла на 40 % по сравнению с режимами без SER;
  • на нескольких конфигурациях графических процессоров Intel Arc серии B прирост составил 90 %.
  • результаты получены на демонстрационной версии, а не в полноценной игре;
  • показатели относятся к конкретному образцу Microsoft и его конфигурации — они не являются эталонными игровыми бенчмарками;
  • в отчёте не уточняется, какие именно модели Intel Arc тестировались (Battlemage или встроенные GPU Panther Lake серии B).

Выпуск SER — важный шаг в развитии трассировки лучей в DirectX. Технология обещает существенный прирост производительности в приложениях с DXR, особенно на видеокартах с аппаратной поддержкой функции. Разработчики уже могут изучить возможности SER на примере демонстрационного кода от Microsoft и оценить потенциал оптимизации своих проектов.

Связанные посты