Я с изрядной долей скепсиса отношусь к всеобъемлющему подходу Nvidia к модификаторам производительности на основе ИИ. Базовая версия DLSS хороша, особенно теперь, когда появилась DLSS 4, но к остальным у меня есть вопросы. А что насчет таких функций, как Nvidia Reflex, где преимущества еще сложнее заметить?
С самого начала Nvidia Reflex казалась мне чем-то непонятным. Если эффект суперсэмплинга DLSS всегда было довольно легко заметить невооруженным глазом, то с Reflex дело обстоит иначе. Черт возьми, даже печально известную функцию генерации кадров из пакета Nvidia DLSS легко увидеть, если выкрутить ее на максимум. Однако с Reflex ситуация заметно отличается.
Статья, объясняющая все тонкости Nvidia Reflex, давно назрела, и именно это я и собираюсь здесь сделать. Если вам тоже сложно понять, что вообще делает Reflex, вы попали по адресу.
Что такое задержка, и как Nvidia Reflex на нее влияет?
Проще говоря, Nvidia Reflex — это набор функций, разработанный специально для борьбы с задержкой системы отклика на ввод. Задержка — это точная задержка между вашим действием и появлением его результатов на экране, и чем она выше, тем менее отзывчивой будет казаться игра. Если вам нужна удобная шпаргалка для отслеживания, то вот она:
- Высокая частота кадров и низкая задержка — это хорошо.
- Низкая частота кадров и высокая задержка — это плохо.
- Низкая частота кадров может привести к высокой задержке, но обычно это лишь один из ее заметных компонентов. У вас может быть высокая частота кадров при высокой задержке (например, при использовании генерации кадров).
Геймеры со стажем могут также знать задержку под более забавным названием "пинг", и это тоже может помочь вам связать все воедино в режиме реального времени. Помните, как играли в Modern Warfare с плохим интернет-соединением в 2008 году? Да, такое не забывается, верно? Но вернемся к теме.
Когда-то частота кадров была основным показателем производительности в видеоиграх. Чем выше число, тем лучше ваш FPS, и чем лучше ваш FPS, тем более отзывчивыми казались игры. Просто, не так ли? Дело в том, что с тех пор мы изрядно усложнили ситуацию, убедившись, что нет, FPS — это не единственное, на что мы должны обращать внимание в этом контексте. Вместо этого мы должны учитывать саму частоту кадров, ее стабильность и задержку ввода.
Общая воспринимаемая производительность игры (то, как она выглядит и ощущается в процессе игры) — это сочетание ее FPS и задержки ввода, среди прочего, и Nvidia Reflex пытается максимально уменьшить последнюю часть этого уравнения. Иногда это происходит в ущерб пользователю, но об этом позже.
Как работает Nvidia Reflex?
Согласно сообщению в блоге Nvidia, опубликованному несколько лет назад, Nvidia Reflex стремится "оптимизировать каждый аспект конвейера рендеринга для минимизации задержки, используя комбинацию SDK и оптимизации драйверов". Для достижения максимального эффекта Reflex должна быть реализована в играх на уровне каждого проекта, и это потому, что в противном случае крайне сложно уменьшить задержку ввода.
Комплект для разработки программного обеспечения Reflex (SDK) тонко настраивает игровой движок для достижения рендеринга "точно в срок": как только кадр отрендерен, он сразу же отправляется на экран, чтобы уменьшить очередь рендеринга процессора для GPU. Традиционный конвейер рендеринга работает, ставя кадры в очередь для рендеринга на GPU, а Reflex эффективно сокращает это окно настолько, насколько это возможно.
"Когда разработчики интегрируют Reflex SDK, они могут эффективно откладывать выборку ввода и игровой симуляции, динамически регулируя время отправки рендеринга на GPU, чтобы он обрабатывался точно в срок", - объясняет Nvidia. И, о, да, обычно все работает хорошо.
На практике Nvidia Reflex делает так, что ваш GPU всегда остается загруженным менее чем на 100%, что приводит к небольшому потенциальному снижению частоты кадров, при этом значительно уменьшая задержку ввода. Если ваш GPU перегружен, вы получите сильное заикание и другие проблемы с производительностью, что приведет к большей задержке, чем при поддержании GPU ниже его максимальной загрузочной мощности.
В традиционно рендеренных играх с полностью включенным Reflex SDK вы получите измеримое улучшение задержки ввода, и это действительно главное. В результате вы получаете игру, которая значительно более отзывчивая и в которую приятнее играть, что очень важно. Однако Nvidia Reflex отнюдь не является панацеей.
Проблемы с Nvidia Reflex и ее сценарии использования
Хотя это может показаться волшебством, Nvidia DLSS как набор функций далек от этого. Я уже упоминала о важности учета задержки системы при оптимизации видеоигр, но есть еще одна вещь, которую нам нужно здесь донести: задержку нельзя полностью устранить. Обработка требует времени, и чем больше всего вы добавляете в конвейер рендеринга, тем больше задержки вы добавляете в уравнение рендеринга. Учитывая это, меня раздражает, что Nvidia как бы представляет Frame Generation как окончательное решение проблем с производительностью игр.
Генерация кадров любого рода улучшает воспринимаемую визуальную плавность игры: ее кадры в секунду. Это абсолютно ничего не делает с точки зрения задержки. Нет, на самом деле, забудьте: генерация кадров имеет свою цену рендеринга, что означает, что она, как правило, добавляет несколько миллисекунд в ваш конвейер рендеринга. От этого никуда не деться, хотя Nvidia Reflex, конечно, пытается это исправить.
Не поймите меня неправильно: использование Nvidia Reflex вместе с Nvidia Frame-Gen — это огромная помощь для уменьшения задержки ввода, но вы все равно получаете задержку на уровне 60 FPS при воспринимаемой плавности 200 FPS. Если это звучит как небольшая несостыковка, вы на правильном пути.
Кроме того, Nvidia Reflex иногда может давать сбои. В некоторых играх это вполне может привести к снижению производительности, нестабильному темпу кадров (что для меня является огромным минусом) и даже к заметному заиканию. Именно поэтому не стоит просто включать Reflex на уровне драйвера и продолжать с ним работать, и именно поэтому Nvidia рекомендует разработчикам использовать Reflex SDK для правильной реализации.
Как правильно использовать Nvidia Reflex?
Несмотря на то, что Nvidia Reflex — сложный зверь сам по себе, пользоваться им довольно просто: просто включите опцию Nvidia Reflex Low-Latency Mode в настройках графики вашей игры, и все готово. Еще раз отмечу, что по умолчанию это влечет за собой снижение производительности, хотя в подавляющем большинстве случаев это будет положительным моментом для вашей задержки ввода.
Nvidia Reflex: "Включено" против "Включено + Ускорение"
Более сложный вопрос касается того факта, что в играх обычно есть два разных варианта включения Nvidia Reflex: "Reflex On" и "On + Boost". Между ними также есть существенная разница. Базовый Reflex, по сути, поддерживает динамический предел частоты кадров, который удерживает ваш GPU под 100% загрузкой для улучшения задержки ввода. Опция "On + Boost", с другой стороны, пытается повысить частоту ядра вашего GPU для улучшения его минимальной производительности в 1%.
Если вам незнакома эта терминология, 1% минимальных значений — это чрезвычайно важный показатель частоты кадров, который связан с тем третьим элементом производительности видеоигр, который я ранее лишь вскользь упомянула: стабильностью. 1% минимальных значений — это самые плохие, самые медленные кадры, которые может отрендерить ваш GPU, и в идеальном сценарии они были бы максимально близки к вашей фактической средней частоте кадров. Чем больше разница между вашей средней частотой кадров и вашими 1% минимальными значениями, тем хуже будет темп кадров.
Имея в виду эту информацию, Nvidia Reflex On + Boost изо всех сил старается повысить ваши 1% минимальные значения, заставляя ваш GPU работать на высокой частоте. Однако, когда ваш GPU работает быстро, он также быстрее нагревается. Что происходит, когда ваш GPU перегревается? Он снижает частоту, чтобы остыть. Теперь вы понимаете, почему "On + Boost" может привести к некоторым проблемам с производительностью, которые не очевидны на первый взгляд.
Это, конечно, отличная идея, но если я с удовольствием рекомендую вам держать Reflex включенным везде, где это возможно, то я бы посоветовала протестировать опцию "On + Boost" просто для того, чтобы убедиться в ее безопасности.
Nvidia Reflex — хорошая функция, но помните о ее недостатках
О Nvidia Reflex нужно помнить очень многое, потому что это сложная технология, которая пытается решить сложную проблему. Однако вывод, к счастью, довольно прост: если в игре есть возможность ее включить, вы должны это сделать.
Обратной стороной этой монеты является то, что Reflex, конечно, не поможет вам почувствовать, что многокадровая генерация обеспечивает производительность на уровне 400 FPS. Мне кажется, что Nvidia пытается заставить людей думать, что Reflex — это нечто, чем он на самом деле не является. Reflex 2, обновленная версия того, что я обсуждала выше, тоже выглядит отлично, но это не будет волшебным решением сложной проблемы задержки. Задержка никуда не денется, а генерация кадров только увеличивает ее.
ага и на 5-10 фпс садит этот рефлекс
что значит 5-10 фпс? от 60 фпс или от 400? если хочешь поумничать то пиши в %
от 60.
Reflex лучше всего подходит для онлайн игр, там input-lag порой сильно роляет. Для сессионок Reflex уже не такая необходимость
Если вместе с генерацией кадров, то лучше использовать.
совет на миллион. да только генератор принудительно включает рефлекс, если че 🤣
С дегенерацией там уже не рефлекс, а конвульсия получается. В Stalker 2 ходил как бухой против быстрых монстров, пришлось еще докидывать кучу мобу на удушение задержки.
В общем подойдет если уж совсем мало FPS и деваться некуда, как реанимация.
Баба автор стати! Девушек геймеров не бывает! // The Trees
Хм, стиль написания статьи очень похож на западный манер, видимо тут в лучшем случае перевод оригинала на английском, либо что ещё более вероятно статья написанная ии, где исходники описания с зарубежных сайтов.
"Если это звучит как небольшая несостыковка, вы на правильном пути."
"Если ваш GPU перегружен, вы получите сильное заикание и другие проблемы с производительностью, что приведет к большей задержке, чем при поддержании GPU ниже его максимальной загрузочной мощности"
Поверь, ещё как бывают👆 // New Show
// The Trees
я так и не понял как он работает. но и не слишкам интересно и да я получил в основном фризы но я подумал что происходят из-за процессора.
ваще я бы наверна хател технологию, которая бы обрабатывала игру в параленом потоке на процессоре всегда 60 фпс когда это возможно не синхронезированно с частой кадров самой игры. есть аналогия отсечание оклюзии но там это работает работает сихнронизировано чтоб точно отрезать невидимую геометрию в каждом кадре. а путь с рассинхроном с основной игрой наверно путь в баги и возможности вскакивать из штанов и проходить сквозь стены. и возможно это фундаментально и непоправимо. я думал что рефлекс работает как то так. это просто быстрый буфер ввода эн кратно частете кадров. типа кадров 30 но игра думает что их 60. кусор мыши обрабатывается обычно в современных играх в отдельном потоке иначе он бы страшно лагал и не обладал отзывчивовстью. если игра тормозит невозможно было бы навести на кнопку выйти из игры ждаже. ПеКа проблемы.
nvidia flex (killing floor 2) да было прикольно, кровь по физике льётся 3-4 секунды + кишки, печень с физикой и т.д. рефлекс ? да он нигде не работает, разницы нет.
это разные вещи вообще да и флекс давно умер он ещё был в фоллаут 4 но сейчас при его включении крашится игра
У меня в cs2 сейчас game Latenz 4.2ms- 5.8ms , прыгает туда сюда))
Но в КС играть очень приятно)
Жду 5090 что бы уменьшить показатель, так как сейчас стоит 2080ti.
Статья бред бредовый, можно было уместить в два предложения всю статью
Так стоп нахой. Задержка измеряется не в фпс, а в мс.
А можно просто мощную видеокарту за вменяемые деньги??
В Cyberpunk 2077 пробовал включать эти 2 варианта опциий. Управление становилось ватным, заметный глазу инпутлаг. При частоте кадров 60. Проц 9600х, ddr5/32, 4060, 2к монитор, 2ssd, под игры отдельный. Вообще сырая технология.