Компания Microsoft анонсировала новую оптимизацию для API DirectX 12, которая в сочетании с технологией Resizable-BAR будет обеспечивать центральному и графическому процессорам одновременный доступ к полному стеку памяти видеокарты. Функция называется GPU Upload Heaps. Microsoft внедрила её в состав последней версии комплекта разработчика ПО DirectX12 Agility SDK.
К сожалению, компания не уточнила, как именно может применяться новая функция, однако её использование может привести к повышению производительности в некоторых сценариях. Поскольку объём памяти современных видеокарт и его потребление программными средами, например, играми, постоянно увеличивается, центральным процессорам ПК приходится перемещать всё больше и больше данных между собой, оперативной памятью и собственно графическими процессорами видеокарт.
Использование функции GPU Upload Heaps позволяет снизить уровень загрузки ОЗУ и CPU, поскольку центральному процессору больше не придётся одновременно хранить копии данных в оперативной памяти ПК и памяти видеокарты для их взаимодействия. А так как память современных видеокарт очень быстрая, то никаких негативных эффектов на уровень задержки от хранения данных в памяти видеокарты не будет.
Для работы указанной функции в играх необходимо, чтобы видеокарта и центральный процессор в составе ПК поддерживали технологию Resizable-Bar или Smart Access Memory. В основе GPU Upload Heaps использует именно технология Resizable-Bar, поскольку она позволяет Windows напрямую управлять памятью видеокарты. Как известно, Smart Access Memory является полным аналогом Resizable-Bar от AMD, но под другим названием.
Поддержка GPU Upload Heaps для разработчиков ПО уже добавлена в драйверы NVIDIA, Intel и AMD. Она доступна в драйверах NVIDIA Game Ready и Studio с версии 531.41, у Intel — с версии 31.0.101.4255. Для получения нужного драйвера для платформы AMD необходимо обратиться к соответствующему менеджеру по работе с партнёрами.
Поскольку функция GPU Upload Heaps была представлена совсем недавно, не стоит ожидать её появления в играх в ближайшее время. Разработчикам сперва необходимо разобраться, действительно ли она принесёт существенную пользу для производительности в играх и стоит ли она того времени, которое необходимо на её интеграцию в их проекты.
Источник: 3dnews.ru