DirectX 12 повышает производительность компьютерных игр благодаря следующим особенностям:
- Многопоточная запись в буфер команд. 4 Позволяет сразу нескольким ядрам ЦП взаимодействовать с графическим процессором. 4 При использовании DirectX 11 значительная часть графической работы направлялась на одно ядро. 4
- Асинхронные шейдеры. 4 Устраняют проблемы с очередностью задач и позволяют графическому процессору выполнять несколько задач одновременно. 4 Небольшие задачи заполняют промежутки в трафике текущих задач — в результате за то же самое время выполняется больше работы. 4
- Объекты состояния конвейера (PSO). 3 Позволяют графическому процессору предварительно обрабатывать каждое зависимое состояние вместо того, чтобы постоянно пересчитывать состояния на основе текущего графического конвейера. 3 Это значительно снижает накладные расходы процессора и повышает производительность. 3
По данным Microsoft, DirectX 12 снижает нагрузку на CPU на 50% и повышает производительность GPU на 20%. 3