Что такое NVIDIA DLSS, как она повышает FPS и улучшает графику в играх — подробное объяснение

26 февраля 2019, в 21:25

Недавно компания NVIDIA предоставила владельцам видеокарт GeForce RTX доступ к своей новой технологии Deep Learning Super Sampling (суперсэмплинг при помощи глубокого обучения). Она стала доступна для Metro Exodus и Battlefield 5 вслед за Final Fantasy XV: Windows Edition и 3DMark Port Royal. Многие игроки отметили, что картинка в двух новых шутерах при использовании DLSS размывалась. По факту, проблема актуальна лишь для статичных изображений, тогда как на практике в таких играх, как Battlefield V игрок редко долго остается неподвижным. Тем не менее, это побудило технического директора по глубокому обучению в NVIDIA Эндрю Эдельстена (Andrew Edelsten) прокомментировать наиболее волнующие сообщество вопросы. Основываясь на его ответах и информации из открытых источников, мы попытались разобраться, что вообще такое DLSS и как она работает.

Что такое NVIDIA DLSS, как она повышает FPS и улучшает графику в играх — подробное объяснение



Что такое DLSS?

Deep Learning Super Sampling (DLSS) — это технология NVIDIA, разработанная специально для видеокарт серии RTX. Упор делался именно на эту серию вследствие того, что видеокарты в ней оснащены высокопроизводительными тензорными ядрами, функционирующими в несколько раз быстрее стандартных CUDA ядер. Подобная производительность необходима для обработки изображений в играх с помощью нейронных сетей, но об этом чуть позже. Эта технология использует силы ИИ (искусственного интеллекта) для увеличения FPS (частоты кадров) и сглаживания картинки в играх во время сильных нагрузок на видеокарту. С DLSS игроки могут использовать более высокие разрешения и настройки, одновременно сохраняя достаточную частоту кадров.

Чтобы окончательно определиться с тем, что такое DLSS, нужно дословно разобрать само понятие Deep Learning Super Sampling. Итак, суперсэмплинг — это технология сглаживания, которая создаёт каждый кадр в разрешении большем чем разрешение монитора, после чего уменьшает его обратно. То есть количество пикселей в кадре увеличивается и таким образом технология помогает сгладить резкие контрастные переходы между пикселями разных объектов. Говоря проще, убирает «лесенку» на краях объектов, нежелательные шумы на текстурах в движении и прочие «шероховатости» изображения.

Пример работы суперсэмплинга. Конкретно, технологии NVIDIA DSR (Dynamic Super Resolution, в переводе динамическое суперразрешение)Пример работы суперсэмплинга. Конкретно, технологии NVIDIA DSR (Dynamic Super Resolution, в переводе динамическое суперразрешение)Пример работы суперсэмплинга. Конкретно, технологии NVIDIA DSR (Dynamic Super Resolution, в переводе динамическое суперразрешение)

Теперь немного о глубоком обучении. «Глубокими» называются нейронные сети, состоящие более чем из 1 входного и выходного слоя, например, нейронную сеть из 4 слоев уже можно считать глубокой. Каждый нейрон нового слоя соединен со всеми нейронами предыдущего слоя при помощи «весов». Фактически веса нейронной сети кодируют силу сигнала и позволяют ей обрабатывать входную информацию. Путем множества повторяющихся вычислений, веса глубокой нейронной сети подстраиваются при помощи алгоритма обратного распространения ошибки для того, чтобы ответ на выходе нейронной сети был как можно ближе к желаемому на проверочном наборе данных.

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



Как работает DLSS?

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

В итоге получается технология, использующая обученную на высококачественных примерах нейросеть, которая берет несколько кадров игры для создания суперсэмплинга и комбинирует их в финальный кадр. Вследствие чего экономится пользовательская вычислительная мощность и, соответственно, повышается FPS.

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

Со стороны пользователя ничего не требуется, DLSS будет улучшаться автоматически путём обновления нейронной сети.

Изображение в разрешении 4К без сглаживания (слева), изображение в разрешении 4К с DLSS (справа).Изображение в разрешении 4К без сглаживания (слева), изображение в разрешении 4К с DLSS (справа).Изображение в разрешении 4К без сглаживания (слева), изображение в разрешении 4К с DLSS (справа).



Где лучше использовать DLSS? Почему технология недоступна для всех разрешений?

В разных играх DLSS работает по-разному, потому что каждая игра имеет свои характеристики, основывающиеся на игровом движке, сложности наполнения и времени, затрачиваемом на обучение сети. Суперкомпьютер постоянно работает и NVIDIA продолжает обучать и улучшать нейронную сеть даже после релиза игры. И когда появляются результаты в улучшении производительности или качества изображения, NVIDIA добавляет их через обновления программного обеспечения.

DLSS разработана для увеличения частоты кадров при высокой нагрузке на видеокарту. То есть когда кадровая частота остаётся низкой при полной загрузке видеокарты и отсутствии так называемых «ботлнеков», ситуаций, в которых один из компонентов системы не даёт другим компонентам раскрыть весь свой потенциал. Если ваша игра уже работает с высокой частотой, то время визуализации кадра вашей видеокартой может оказаться меньше, чем время выполнения DLSS. В этом случае DLSS не нужна, потому что она не увеличит частоту кадров. Тем не менее, если игра сильно нагружает видеокарту (FPS находится ниже отметки в 60 кадров в секунду), то DLSS обеспечит оптимальное повышение производительности. В этом случае можно повысить свои настройки графики, чтобы получить максимальную выгоду от DLSS.

Если говорить чуть более технически, DLSS требует фиксированного количества времени видеокарты на каждый кадр для обработки данных нейросетью. Таким образом, игры, которые работают с меньшей частотой кадров или в более высоком разрешении, получают больше преимуществ от DLSS. В случае же с играми, работающими с высокой кадровой частотой или в низком разрешении, DLSS может не справиться с улучшением производительности. Когда время визуализации кадров видеокартой меньше, чем требуется для выполнения модели DLSS, технология не работает. Она активируется лишь в случаях, когда может дать прирост производительности. Доступность DLSS зависит от игры, модели видеокарты и выбранного разрешения.

График кадровой частоты различных видеокарт серии RTX в 3DMark Port Royal с включенной и выключенной DLSS.График кадровой частоты различных видеокарт серии RTX в 3DMark Port Royal с включенной и выключенной DLSS.График кадровой частоты различных видеокарт серии RTX в 3DMark Port Royal с включенной и выключенной DLSS.



А что насчёт размывания кадров?

Края объектов с DLSS остаются четкими и резкими, но без ступенек, которые есть, когда сглаживание выключено. Само «размытие» происходит для очень мелких деталей текстур и заметно только при рассмотрении статичных скриншотов вблизи монитора. В высоких разрешениях с высокой плотностью пикселей, например, 4К на 27 дюймовом мониторе, с расстояния в 0,5-1 метр, при движении в игре эти мелкие детали невозможно различить.

Как уже указывалось выше, DLSS изначально создавалась для увеличения FPS при высокой нагрузке на видеокарту. И при разработке основной упор делался на высокие разрешения (когда нагрузка доходит до максимума), а 4K (3840×2160) является наиболее тяжёлым разрешением. Работа с 4K даёт больше преимуществ, когда речь идёт о качестве изображения, так как количество входных пикселей велико. Для 4K DLSS имеется 7,4 миллиона входящих пикселей, из которых можно сгенерировать окончательный кадр, в то время как для 1920×1080 имеется только около 1.84 миллионов пикселей. Чем меньше исходных данных, тем сложнее DLSS обнаруживать особенности исходного изображения и предсказывать окончательный кадр. То есть чем меньше разрешение, тем хуже работает DLSS.

NVIDIA знает о проблеме с размытием изображения на низких разрешениях и работает над её решением. Добавляется больше обучающих данных и новых методов для повышения качества. Обучение глубокой нейронной сети продолжается, и со временем она улучшится.

Изображение с выключенной DLSS (слева), изображение с включённой DLSS (справа).Изображение с выключенной DLSS (слева), изображение с включённой DLSS (справа).Изображение с выключенной DLSS (слева), изображение с включённой DLSS (справа).



Чем хуже технология TAA?

В зависимости от разрешения, настроек качества и реализации игры некоторые могут предпочесть TAA (временное, оно же темпоральное сглаживание) в одной игре и DLSS в другой. Тут стоит пояснить, что TAA — это технология сглаживания, которая берёт в расчёт несколько ранее отрисованных кадров, учитывая расположение пикселей в динамике. И на их основе сглаживает шероховатости и лесенки на краях, но при этом TAA имеет свойство немного «мылить» картинку.

Игровая индустрия использовала временное сглаживание многие годы и, по мнению вышеупомянутого Эндрю Эдельстена (Andrew Edelsten), его время скоро подойдёт к концу. Так как конечный результат работы TAA генерируется из нескольких кадров, получившееся изображение может страдать от ореолов и мерцаний при высокой скорости движения. DLSS же справляется с этим лучше во многом благодаря нейросети, способной выдавать более качественную картинку как в статике (неподвижном состоянии), так и в динамике (движении). Также, в отличие от TAA, DLSS в процессе работы реконструирует изображение до более высокого разрешения.



Какие игры уже поддерживают DLSS?

На момент написания статьи, поддержка DLSS присутствует в Final Fantasy XV: Windows Edition, 3DMark Port Royal, Battlefield 5 и Metro Exodus. И из-за существующих проблем с работой DLSS в последних двух играх, о них стоит расписать поподробнее.

В Battlefield 5 DLSS, по мнению NVIDIA, на данный момент обеспечивает значительное улучшение производительности (до 40 %) в разрешениях 4K и 2560 × 1440 при сопоставимом качестве. В дальнейшем командой разработки планируется работа над улучшением качества изображения для разрешения 1920x1080, а также для сверхшироких мониторов (например, с разрешением 3440 × 1440).

А для Metro Exodus уже есть обновление, улучшающее чёткость DLSS и общее качество изображения для всех разрешений, которые не были включены в день запуска. Также ведётся обучение DLSS для этой игры, в результате которого ожидается ещё одно повышение качества изображения.



Для каких ещё игр будет добавлена DLSS?

На данный момент, заявлено, что технология DLSS будет доступна ещё для следующих 25 игр:

🔑 Бесплатные Steam-ключи
Читайте и обсуждайте свежие новости видеоигр там, где вам удобно:
Комментарии
(гость)
Зарегистрируйтесь, чтобы всегда оставлять комментарии под своим именем, без модерации и без капчи
4 месяца назад
Чегооо, весь Ютуб разрывается от разоблачений DLSS как мыльной и причудливой постобработки именно в 4к. Более того, нативное 1800р с ТАА выдает те же кадры, но при этом в них больше резкости и они детальней
Ответить Цитировать выделенное
0
4 месяца назад
Так они же поясняют: "мыльность" есть только в статичном состоянии
Ответить Цитировать выделенное
0
4 месяца назад
Даже на фото видно, что картинка просто-напросто замыливается, никаких "чудес" со сглаживанием тут нет.
Ответить Цитировать выделенное
0