Третий акт Baldur’s Gate 3 серьезно влияет на производительность ЦП – но почему?

Почему третий акт Baldur's Gate 3 влияет на ЦП?

Вскоре после выхода нашего основного контента по Baldur’s Gate 3 на прошлой неделе я заметил множество комментариев, которые указывали на то, что чем дальше вы играете в игру, тем больше изменяются характеристики производительности. Ветераны раннего доступа хотели более конкретного тестирования третьего акта, и благодаря сохранению, предоставленному нам пользователем Twitter под ником DarknessFX, у нас был доступ к сохранению продолжительностью 99 часов, и мы готовы были приступить к тестированию производительности в стрессовом режиме.

Итак, что особенного в третьем акте? Просто говоря, дело в плотности, события переносятся в сам город Baldur’s Gate, большой город в мире игры с большим количеством НИП. В моем основном обзоре на прошлой неделе я заметил, что компьютеры средней мощности испытывают трудности в более населенных районах, и просто пробежка по городу показывает, что количество НИП здесь значительно выше. Плотность здесь значительно увеличивает нагрузку на ЦП – и, как мне кажется, она усиливает другие проблемы, которые не были видны в нашей первоначальной работе.

Одна из особенностей этой более сложной производительности в третьем акте заключается в том, что движение делает игру заметно более тяжелой для ЦП. В одной конкретной статической сцене я заметил частоту кадров 90fps на процессоре Core i9 12900K, но просто движение персонажа в мини-кругах снижает производительность на 20 процентов, хотя вид и количество объектов на экране практически одинаковы. Частота кадров ниже, но, что более важно, разница во времени между кадрами более сильно колеблется.

Если вы хотите увидеть, как топовые и массовые процессоры проходят испытания в самой сложной области Baldur’s Gate 3, то посмотрите это.

Еще одна проблема, которую мы обнаружили в третьем акте, связана с переходами камеры в промежуточные сцены или разговоры, что происходит постоянно в этой области. Переход к промежуточным сценам обычно вызывает высокую нагрузку на ЦП, но с более высокой общей нагрузкой на ЦП в третьем акте эти паузы для перехода к разговору становятся заметно хуже. Однако, самый большой эффект, который вы заметите в требовательных сценах третьего акта, связан с общей стабильностью времени кадра – или, как я его называю, “здоровьем кадра”. Это лучше объясняется визуально во встроенном видео, но когда время кадра может увеличиваться на 50-100 процентов, это проявляется в виде рывков. Вдобавок к этому, землетрясения в городе – каждое землетрясение также сопровождается несколькими большими всплесками времени кадра, которые проявляются как заметные рывки.

Выбор графического API также может играть свою роль. Под Vulkan игра работает в районах с большим количеством НИП так же или даже хуже, чем под DirectX 11. Таким образом, даже если Vulkan технически может работать быстрее в пустых районах на оборудовании Nvidia или AMD без НИП, он фактически работает хуже в районах с множеством НИП – примерно на 10 процентов хуже на моем 12900K.

Это процессор топ-класса, но его влияние на производительность на таких процессорах, как mainstream Ryzen 5 3600, на самом деле катастрофично. Производительность падает на 50 процентов, но время кадров становится гораздо хуже. В то время как на 12900K точно есть некоторые всплески времени кадров и некоторая дрожь, Ryzen 5 3600 находится в гораздо худшем состоянии, где почти каждый другой кадр отображает разницу в длине, которая видна невооруженным глазом. Время кадра колеблется около 30fps в среднем, но движение не будет выглядеть плавным вообще, подобно тому, как Bloodborne на консолях PlayStation никогда не выглядит плавным, так как изменение времени между кадрами слишком велико. Если разница между одним кадром и следующим составляет 40-50 процентов, это нельзя сгладить, что означает, что FreeSync и G-Sync здесь вам не помогут.

Чемпионы прошлого в массовом сегменте не справляются с третьим актом Baldur’s Gate 3. Core i9 12900K работает примерно в два раза быстрее – и обратите внимание, как сильно снижаются всплески времени кадров. Здесь мы используем DX11, но Vulkan работает еще хуже на обоих процессорах – даже с AMD GPU.

И все может быть еще хуже. Что, если вы в третьем акте являетесь колдуном и призываете несколько созданий? На 12900K производительность падает на 10 процентов, и время кадров становится более непредсказуемым. Каждый несколько кадров один из них обходится дороже остальных – это может быть обновление пути, анимации или искусственного интеллекта. Конечно, это сложно узнать, но на более старом среднем диапазоне процессоров, таком как Ryzen 5 3600, это обновление искусственного интеллекта каждые несколько кадров усиливается и приводит к катастрофическим результатам. Число кадров предполагает снижение всего на шесть процентов, но время кадров может увеличиться на 50 процентов, что приводит к рывкам движения, которые никогда не выглядят плавными. Третий акт действительно является чудовищем, и старые чипы Zen 2, кажется, не справляются с задачей.

Итак, звонки с просьбой исследовать особенно третий акт были оправданы. Baldur’s Gate 3 работает просто хуже – но это объяснимо, так как на экране много искусственного интеллекта, что усиливает ограничения ЦП. И здесь вы не можете сделать многое. На самых низких настройках можно увидеть, что средняя производительность повышается примерно на 14 процентов. Время кадра становится менее непредсказуемым, но все эти землетрясения все равно вызывают сильные скачки времени кадра, и теперь вы теряете много визуальной красоты из-за снижения уровня детализации. Может ли Vulkan помочь здесь? На самом деле, ясно, что есть снижение производительности в 7 процентов – DX11 остается лучшим путем вперед.

Ограничение в 30 кадров в секунду, может быть? Встроенное ограничение частоты кадров вызывает несогласованность пульсации кадров при активной вертикальной синхронизации, а даже опция Nvidia по половинной адаптивной вертикальной синхронизации все еще имеет некоторые частотные скачки из-за ограничений ЦП. Однако это более последовательно, поэтому стоит обратить внимание на такую ​​опцию, как этот вариант панели управления половинной адаптивной вертикальной синхронизацией или ограничители Kaldien’s SpecialK.

Оправдана ли эта производительность и можно ли ее исправить? Чтобы ответить на этот вопрос, я думаю, что мы можем посмотреть, как производительность масштабируется с количеством ядер и потоков. Рассмотрим Core i9 12900K, и мы увидим интересные данные, когда рассматриваем, как игра работает на разном количестве ядер и потоков. Лучшая комбинация здесь – это фактически восемь ядер без гиперпоточности. Восемь ядер работают всего на 4 процента лучше, чем шесть, в то время как полностью включенный 12900K всего на 2 процента лучше результата на шести ядрах, несмотря на удвоение потоков и доступных ядер. Восемь ядер с включенной гиперпоточностью – худший результат из всех, чуть медленнее результата на шести ядрах.

На мой взгляд, эта масштабируемость показывает, что Baldur’s Gate 3 требует дополнительной работы, с лучшим использованием процессоров с множеством ядер (и, возможно, пониманием того, что пользователи вряд ли отключат гиперпоточность на уровне BIOS). Также было бы неплохо сосредоточиться на уменьшении прерываний, вызванных землетрясениями и изменениями положения камеры.

Vulkan остается вопросительным знаком. Его назначение кажется бесполезным, если он не улучшает производительность ЦП, когда это вам наиболее необходимо, и хорошая, производительная реализация Vulkan может быть основой, необходимой для решения проблем, связанных с ограниченностью ЦП. Принимая все это во внимание, будет интересно увидеть, какая версия для PlayStation 5 будет, учитывая, что она использует ту же архитектуру Zen 2, что и Ryzen 5 3600, который так сильно страдает в среде третьего акта.