Xbox: разработчики говорят об аппаратных блоках AMD по ускорению трассировки лучей

Опубликовано:

ray-tracingО "железе" в составе игровых приставок нового поколения написано немало. Как Microsoft в своей Xbox следующего поколения, так и Sony в новой Playstation будут использовать специализированный чип от AMD. В интервью Gamespot ведущий разработчик The Coalition (студия разработки игры Gears 5) сообщил, что использование выделенных аппаратных блоков приведет к существенным изменениям.

В рамках презентации архитектуры RDNA и видеокарт Navi AMD рассказала о собственном видении технологии трассировки лучей. Судя по всему, следующее поколение архитектуры RDNA получит аппаратные блоки, то есть аппаратное ускорение соответствующих вычислений. Что касается нынешних видеокарт, AMD запатентовала вычисления трассировки лучей через потоковые процессоры. То же самое NVIDIA делает и на видеокартах Turing без поддержки RTX и на GPU Pascal.

Но в интервью наши коллеги Gamespot спросили Колина Пенти (Colin Penty) из The Coalition по поводу его оценки производительности Xbox Scarlet и возможностей, которые открывает увеличение производительности.

"I know you can't talk about unreleased hardware, but at a high level, what are your thoughts on even more increased power with the new console in terms of what it will allow you to do technically, but also creatively?"

Ответ таков:

"We don’t have anything to announce right now in terms of Gears with the new hardware--but I’m definitely super excited about what the new hardware could do. Having dedicated ray tracing cores is huge."

Как видим, Колина впечатлили возможности нового "железа". И влияние выделенных аппаратных блоков он оценивает, как огромное.

Остается вопрос: подтверждается ли наличие выделенных аппаратных блоков трассировки лучей или нет? Скорее всего, здесь все зависит от даты выхода следующего поколения приставки Xbox. Осень 2020 - вполне возможный вариант, в таком случае архитектура RDNA2 весьма вероятна. Как мы упоминали выше, данная архитектура будет содержать выделенные аппаратные блоки трассировки лучей.

Sony уже подтвердила использование специальной SoC AMD с восемью ядрами Zen 2 и архитектурой Navi. Но идет ли здесь речь о Navi на архитектуре RDNA или о втором поколении RDNA? Трассировка лучей будет поддерживаться на обоих поколениях, но аппаратное ускорение есть только у архитектуры RDNA2.

Ядра RT: NVIDIA удивила всех

NVIDIA многих удивила прошлогодним объявлением архитектуры Turing с аппаратным ускорением трассировки лучей. Конкуренты тоже были впечатлены, хотя многие месяцы с программной поддержкой было очень туго. Microsoft представила соответствующий программный интерфейс DXR API. NVIDIA для ускорения использует собственное RTX API и ядра RT. В GPU Turing таких ядер насчитывается несколько десятков - в дополнение к хорошо известным потоковым процессорам.

Подробности о ядрах RT

Ядра RT используются для алгоритма Bounding Volume Hierarchy (BVH). Данный алгоритм, в первую очередь, позволяет уменьшить вычислительную нагрузку. В случае BVH сцена разбивается на все меньшие по размеру блоки, в которых присутствуют примитивы. Луч следует обрабатывать только с теми блоками, которые он проходит на пути к примитиву. Подход несколько напоминает воксели, которые NVIDIA использует для Voxel Global Illumination (VXGI). BVH представляет собой дерево, в котором можно видеть, какой именно блок и, в конечном итоге, примитив следует учитывать для расчета трассировки лучей.

BVH может выполняться программно. При этом потоковым процессорам приходится на каждый луч выполнять несколько тысяч инструкций, в том числе многочисленные циклы для поиска блоков и, в конечном итоге, примитива. Только после нахождения примитива можно выполнять шейдинг луча.

Именно здесь на помощь приходят ядра RT. Они содержат специальные функциональные блоки SFU (Special Function Units), оптимизированные под поиск нужных блоков и примитива, с которым пересекается луч. Потоковый процессор принимает задачу, после чего передает ее ядру RT, которое возвращает результат потоковому процессору - и последний может выполнять рендеринг дальше по конвейеру.

Таким образом, NVIDIA может переносить сложные вычисления трассировки лучей на выделенные аппаратные блоки, освобождая потоковые процессоры для классического рендеринга. К сожалению, игр с использованием NVIDIA RTX все еще очень мало. К концу года ожидается выход новых игр с поддержкой RTX. И 2020 год смотрится для AMD оптимальным, чтобы выступить со своей технологией.