Оптимизация...
Дата: 05.09.2016 18:35:45
Forrens (05 сен 2016 - 18:15) писал: Но ведь там и GPU-bounded тоже найти трудно. Мешей, текстур,
шейдеров, меньше чем в сцене с 24 кораблями и ландшафтом. При этом
смена флажка порой вызывает stall в полсекунды (загрузка 2
новых треугольников с тестуркой и простеньким шейдером).Santcoder: Bound означает не загрузку на полную по одной из подсистем из-за
сложности сцены, а ту подсистему, которая работает дольше всего
конкретно в этой сцене. Например, для 30 FPS кадр
должен отрисоваться за 33 мс. Предположим в нашей абстрактной
системе 30 FPS и 33 мс Frame Rate. Если в этой системе на CPU кадр
обрабатывается за ~33мс, а на GPU за 15 мс, то видеокарта ждет 16мс
пока CPU отмолотит "свою часть" и в это время "отдыхает". В
этом случае появляется иллюзия что CPU молотит как бешеный(он же не
отдыхает между кадрами), а видеокарта "недорабатывает". В
GPU-bound все наоборот, например случай порта - 60FPS, 16мс на
кадр. Процессор на n кадре за 7мс подготовил данные для n+1 кадра
GPU и отправил их ей, она их молотит 16мс. Пока она
молотит на n+1 кадре 16мс картинку, процессор подготовил данные для
кадра n+2 и "отдохнул" 9мс. Проц холодный, видяха молотит без
отдыха и начинает греться. Пока в порту любуемся
картинкой и ничего не делаем - мы целиком упираемся в GPU за
счет сцены. Вешаем флажок -> включаем логику, UI, взаимодействие
с сервером, грузим флажок с HDD и т.д. -> упираемся в CPU,
получаем фриз. Над исправлением этих фризов мы сейчас работаем.
К сожалению, они не однородны и оптимизировать код нужно в
очень многих местах. Часть этих оптимизаций уже была на ОТ и выйдет
на прод в ближайшее время, часть - сейчас в разработке.
evgen2244 (05 сен 2016 - 18:12) писал: Мои 4 ядра загружены всегда на четверть и даже ниже (настройки у
меня ультра максимальные), почему нагрузка на процессор низкая? Я
не хвастаюсь, проста раньше нагрузка на процессор была выше, в
каком то патче перенесли нагрузку на видяху?Santcoder: Explorer процессов в винде не очень правдив. Не знаю, в каком из
патчей конкретно изменилась нагрузка конкретно для вашего
процессора, но могу предположить, что это произошло когда мы
вынесли некоторые процессы игры на отдельные ядра.
Оптимизация...














