Imagination представила семейство GPU PowerVR Wizard с поддержкой трассировки лучей

 
Просмотрено: 403 раз(а).
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезды (Оценок пока нет)
Loading ... Loading ...

Компания Imagination Technologies сделала на конференции разработчиков игр GDC 2014 весьма впечатляющий анонс — речь идёт о новом семействе графических ускорителей с кодовым именем Wizard. В отличие от привычных GPU, Wizard является первым, хотя и давно ожидаемым, шагом Imagination по продвижению технологии трассировки лучей на потребительский рынок. Трассировка лучей не является новинкой в мире GPU — технология может быть достаточно неэффективно исполняться при помощи шейдеров — но в Wizard компания пошла несколько дальше.

На выставке CES в январе этого года Imagination намекала, что особые блоки трассировки лучей в реальном времени могут появиться и в мобильных устройствах, а не только в специализированных ускорителях вроде Caustic 2500. Компания с 2010 года занимается разработкой технологий аппаратного ускорения трассировки лучей. Она также продвигает созданный по типу OpenGL низкоуровневый открытый API PowerVR OpenRL в качестве стандарта для аппаратного ускорения трассировки лучей и выпустила SDK для создания соответствующих приложений. Теперь компания готова выводить ускорители трассировки лучей на рынок потребительских GPU.

Это и есть семейство графических ускорителей Wizard. По сути, речь идёт о развитии существующих ускорителей Imagination PowerVR Series6XT Rogue: к традиционным блокам GPU добавились новые, необходимые для эффективного исполнения трассировки лучей. В результате мы имеем дело с GPU, которые поддерживают все возможности традиционного конвейера растеризации, но вдобавок умеют выполнять задачи трассировки лучей.

Архитектура PowerVR Rogue

Архитектура PowerVR Rogue

Первый ускоритель семейства Wizard — GR6500. Это вариация существующего Series6XT GX6450, дополненная аппаратными блоками трассировки лучей. С точки зрения аппаратных растровых блоков ничего не изменилось, так что коснёмся новшеств.

Архитектура PowerVR Wizard

Архитектура PowerVR Wizard

Архитектура Wizard предполагает 4 ключевых блока обработки трассировки лучей: Ray Tracing Data Master, Ray Tracing Unit, Scene Hierarchy Generator и Frame Accumulation Cache. Эти блоки связаны с общей шиной Rogue и могут отправлять данные в блоки растеризации и получать их обратно для дальнейшей обработки.

Блок Ray Tracing Data Master отвечает за передачу данных о лучах обратно в блоки растеризации. Ray Tracing Unit обрабатывает данных о лучах и точках соприкосновения, а Data Master затем передаёт эти данные в блоки растеризации для формирования финальной картинки.

Ray Tracing Unit (RTU) — основа аппаратной трассировки лучей от Imagination. Этот непрограммируемый блок и занимается собственно основными вычислениями. RTU состоит из двух субблоков: Ray Interaction Processor и Coherency Engine. Ray Interaction Processor осуществляет необходимые расчёты, а Coherency Engine отвечает за организацию и согласование данных о лучах для эффективной обработки. Стоит отметить, что RTU — самостоятельный блок и его появление не должно никак отразиться на конечной теоретической производительности традиционных растровых графических расчётов. Впрочем, на практике использование RTU всё же может снизить производительность из-за дополнительного использования памяти для задач трассировки лучей.

О блоках Scene Hierarchy Generator и Frame Accumulation Cache производитель рассказал весьма скупо. Известно, что Scene Hierarchy Generator используется для динамического обновления объектов, а Frame Accumulation Cache отвечает за доступ к буферу кадра и призван компенсировать обычно некогерентную природу трассировки лучей, усложняющую операции с памятью и кеширование.

Базовая модель трассировки лучей (Wikimedia, Henrik)

Базовая модель трассировки лучей (Wikimedia, Henrik)

Как сообщает Imagination, ускоритель GR6500 на эталонной частоте 600 МГц сможет обрабатывать до 300 млн лучей в секунду и 100 млн динамических треугольников в секунду. Традиционные блоки ALU на той же частоте могут обеспечить теоретическую производительность 150 гигафлопс в режиме FP32 или 300 гигафлопс в режиме FP16. Разумеется, речь идёт об эталонном дизайне, а конечные разработчики систем на чипе могут выбрать другую частоту и внести различные изменения, влияющие на производительность.

Пока, впрочем, Imagination не раскрывает весьма важные детали вроде энергопотребления блоков аппаратной трассировки лучей. Без сомнения, у чипа GR6500 показатели площади и энергопотребления выше, чем у GX6430 и GX6650, но пока не известно, насколько. Впрочем, стоит отметить, что это по-прежнему мобильный чип, так что слишком высокое потребление энергии исключено. Необходимо добавить, что, несмотря на анонс, реальные чипы с этими ускорителями появятся не ранее 2015 года.

Базовая модель трассировки лучей (Wikimedia, Henrik)

Рендеринг при помощи традиционной растеризации

Imagination считает, что аппаратная трассировка лучей позволит существенно повысить качество графики и реализовать ряд эффектов, сложных для традиционного конвейера растеризации. Прежде всего, речь идёт о реалистичных тенях, освещении, прозрачности, отражениях. Все эти эффекты можно реализовать и при помощи традиционной растеризации, но с определёнными недостатками, касающимися памяти, геометрии, производительности или точности в целом. С помощью интеграции аппаратных блоков трассировки лучей качество ряда эффектов может сильно возрасти, а их «стоимость» с точки зрения энергии и ресурсов — заметно снизиться.

Гибридный рендеринг

Гибридный рендеринг

Imagination предлагает использовать в играх гибридную модель. Растеризация остаётся самым быстрым и эффективным способом реализации ряда шагов рендеринга в реальном времени, а разработчики сегодня весьма эффективно используют этот инструмент. Так что вполне логично применять трассировку лучей в качестве дополнения поверх основной сцены для тех задач, где это необходимо и имеет смысл. Результат должен получить как преимущества растеризации, так и трассировки лучей.

Примеры игровых направлений, где трассировка лучей может быть весьма эффективна: тени, отражения, преломление света, модель затенения Ambient Occlusion, глобальное освещение, физика и определение столкновений, ИИ и поле зрения персонажей, виртуальная реальность

Примеры игровых направлений, где трассировка лучей может быть весьма эффективна: тени, отражения, преломление света, модель затенения Ambient Occlusion, глобальное освещение, физика и определение столкновений, ИИ и поле зрения персонажей, виртуальная реальность

Посмотрим, окажется ли подход Imagination верным, получит ли признание и распространение такая технология. Как известно, Apple является одним из ключевых партнёров Imagination: её процессоры серии A для iPad, iPhone, iPod Touch и Apple TV используют графику PowerVR. Если Apple интегрирует в будущие продукты графику Wizard, то шансы на признание аппаратной трассировки лучей в мобильных играх станут весьма высокими. Впрочем, уже сейчас разработчики из Unity Technologies сообщили о том, что их движок Unity 5.x сможет использовать технологию трассировки лучей от Imagination для ускорения эффектов освещения в реальном времени в режиме редактора.

Режим редактора Unity 5 с режимом трассировки лучей

Режим редактора Unity 5 с режимом трассировки лучей

Включая специальные блоки трассировки лучей в свои GPU, Imagination идёт на заметный риск. Если идея будет принята рынком, то компания вырвется на передовую новых графических технологий, но если аппаратная трассировка лучей будет слабо использоваться в играх, то новые блоки ускорителей Wizard останутся по сути ненужными, а компания и её партнёры зря потратят немалые силы на разработку и продвижение идеи.

В любом случае, чрезвычайно интересно, во что это всё выльется на практике. Мобильные GPU, ранее преимущественно догонявшие настольную графику в плане возможностей и технологий, впервые предлагают что-то принципиально новое, чего нет пока на рынке ПК. Возможно, это начало больших изменений в графике реального времени.

Кстати, чуть более года назад Джон Кармак (John Carmack) выразил убеждение: «Я на 90% уверен, что в конечном итоге интеграция блоков аппаратной трассировки лучей в потребительские устройства не потребует больших изменений существующих архитектур GPU». По‑видимому, известный программист оказался прав в очередной раз.

Материалы по теме:

Источник: