Добрый день. В Unreal Engine 4.27 (https://docs.unrealengine.com/4.27/en-US/WhatsNew/Builds/ReleaseNotes/4_27/) появилась возможность собрать UE

с Profile-Guided Optimization (PGO). Согласно этим же release notes, на Android разрабы движка получили ускорение движка в каких-то CPU-heavy сценариях до 10% (правда на Android, про Windows ни слова).

Скажите пожалуйста, есть ли у кого-то ещё примеры, где пересборка UE под конкретную игру с PGO привела к увеличению производительности? И если да, то сколько удалось выжать? Подойдут любые публикации про PGO в UE, свои замеры и прочее.

Я уже задавал тему на официальном форуме, но там пока что тишина: https://forums.unrealengine.com/t/profile-guided-optimization-pgo-results-with-unreal-engine/1253240

Буду рад любой информации. Заранее спасибо.

7 ответов

5 просмотров

Есть. Вообще, сборка с pgo это неотъемлемая часть разработки сейчас. Выигрыш ооооочень сильно зависит от проекта.

Alexander "SonnySlave"-Zaitsev Автор вопроса
Илья Максимович
Есть. Вообще, сборка с pgo это неотъемлемая часть ...

А можете пожалуйста поделиться ссылками\своими результатами\чем-либо ещё на цифры выигрышей? Да, я понимаю, что результат сильно зависит от профиля нагрузки, типа игры (во что там больше упирается) и так далее, но мне хотя бы хоть какие-то цифры. Тогда как минимум мне будет проще приходить в другие игровые движки и показывать мол смотрите - в UE такой и такой выигрыш даёт

Alexander "SonnySlave" Zaitsev
А можете пожалуйста поделиться ссылками\своими рез...

Я уже точно не помню, но на one s, где у нас ситуация прям совсем плохая была, удалось выиграть процентов 5-6. В любом случае сейчас уже не размышляют собирать с pgo или нет. Просто собирают и не парятся

Alexander "SonnySlave"-Zaitsev Автор вопроса
Илья Максимович
Я уже точно не помню, но на one s, где у нас ситуа...

Понял, спасибо! Если вдруг вспомните ещё какие-либо цифры про PGO и UE либо попадутся подобные материалы на глаза - буду премного благодарен, если скинете :)

Alexander "SonnySlave"-Zaitsev Автор вопроса
Илья Максимович
Я уже точно не помню, но на one s, где у нас ситуа...

а не подскажете, как именно вы собираете профиль, под который оптимизировать? какой-то тестовый workload подготавливаете? может с внутренних плейтестов каких-то снимаете? Используете PGO через инструментацию или пробуете через семплирование (так называевый AutoFDO)? Какое замедление движка\игры у себя наблюдали во время снятия профиля?

Alexander "SonnySlave" Zaitsev
а не подскажете, как именно вы собираете профиль, ...

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

Alexander "SonnySlave" Zaitsev
а не подскажете, как именно вы собираете профиль, ...

Мне кажется плейтесты тоже годный вариант. Но в нашем случае у нас не было на это ресурсов, да и необходимости. Хорошо все автоматизировалось

Похожие вопросы

Обсуждают сегодня

Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
14
Всем привет. Есть кто разбирается в платежках? Что б принимать из других стран и выплачивать рф снг
Musa
6
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
У тебя в конфиге нигде нет deny all; или вообще любого deny?
Alexander Sherbakov
10
Портфолио: Зовут меня Александр, мне 41 год. Город Киров. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github.co...
Magic
11
Приветствую всех, есть вопросик. Передали проект на OctoberCms, без инсталяшки в полуразвернутом виде, нужно было залить бекап бд, после залития бд, оказалось, что части строк...
Лео
14
Подскажите, пожалуйста, где в backende, или не в нем можно дату поправить? Логирует действия не в том часовом поясе
Лео
7
Есть магистры regex в чате? Задача: нужно написать regex который мэтчит полные (без сокращений по типу ::1/128) ipv6 адреса кроме 2001:0df7:cef7:29f7:52f7:adf7:2cf7:4ff7, при ...
Илья
5
посыпаю голову пеплом =) https://docs.vapor.codes/advanced/files/?h=stream#files
Seryoga
10
люди а напомните, пожалуста, как называется алгоритм поиска текста который допускает ввод ошибок? Например есть несколько строк: Trigun Trigun: Stumpeede Мне нужно что бы ...
Куся 🌿⃤ __UKS
2
Карта сайта