Найти тему
Ви

Измерение производительности в мире видеоигр

Оглавление

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

Правильный бенчмарк-тест
Правильный бенчмарк-тест

Для начала скажу, что существуют отдельные программы для оценки производительности компьютера - бенчмарки. Они существуют достаточно давно, и появились еще на заре эры персональных компьютеров. Видеокарты тогда еще не существовали, все обрабатывалось процессором, и тесты были сугубо на его, собственно, производительность. С появлением и последующей эволюцией видеоускорителей бенчмарками стали называть программы для комплексных тестов. Они пережили несколько видов технологий отображения графики и сейчас являются способом получения числовой оценки производительности компьютера в различных видах деятельности: обработке видео, отображении графики и многих других.

Данные, полученные от бенчмарка, все равно являются сугубо синтетическими - у Вашего ПК может быть столько же баллов, сколько у Васиного из соседней квартиры, однако у Вас будет идти новенькая Rage 2 на ультра настройках, а у него - только на высоких. Дело в том, что различные игры по-разному оптимизированы, используют разное количество видео/оперативной памяти, какие-то из них более требовательны к процессору, другие - к видеокарте, какие-то лучше работают на многопоточных процессорах, какие-то с упором на частоту одного-двух ядер. Это только верхушка айсберга, поэтому отбросим синтетику и поговорим о "живых" параметрах и тестах.

Метрики производительности

Framerate (FPS)

Да, это любимый FPS, который помогает 12-летним игрокам в CS и DOTA меряться своими компьютерами. В какой-то мере, оценка производительности по FPS достоверна, если Вы запускаете игру на грани системных требований. Чаще всего, фреймрейт в играх ограничен 60-ю, 30-ю кадрами. В некоторых его можно задать вручную. Поэтому "гадание на фпс" полезно, если у Вас слабенький компьютер (ну, или средний) и Вы пытаетесь выгадать немного буферной мощности и времени для отрисовки.

Ох уж эти...а, они уже и не дети ведь. Ну делаааа
Ох уж эти...а, они уже и не дети ведь. Ну делаааа

Что касается вышеупомянутых "экспертов", разница между 120 и 140 фпс в CS:GO настолько же несущественна, как и мнение самих "экспертов".

FPS представляет из себя кол-во полностью отрисованных кадров за секунду. Только вот в чем беда - от фризов (ну или по-человечески статоров) высокий фпс практически не зависит.

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

Обычный график производительности в MSI Afterburner
Обычный график производительности в MSI Afterburner

Frametime

А вот здесь уже интереснее. Frametime - это время, затраченное на отрисовку одного кадра. Если вывести этот показатель в виде графика, зачастую можно увидеть, где "проседает" Frametime, и тогда же Вы невооруженным глазом увидите фризы. Есть также понятие "дропы", которое обозначает как раз этот резкий скачок Frametime. Кстати, как показывает практика, зачастую дропы менее заметны на многоядерных процессорах (в основном AMD). То есть, по графикам все не очень хорошо, а картинка все равно плавная.

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

Другие, но не менее важные метрики

И что, всего две метрики? И одна из них ФПС? Пффф! - скажет эксперт и пойдет играть в CS. Иди, родной, иди, а мы обсудим то, что еще может сказать нам наш монитор производительности.

Загрузка CPU

Общая нагрузка на CPU (процессор) измеряется в процентах, хотя показатели можно разбить на отдельные ядра. На многоядерных процессорах одно-два ядра зачастую "простаивают". Также стоит отметить, что следить нужно не только за нагрузкой в процентах, но и за частотой процессора и его ядер.

Если частота процессора заявлена одна, а на экране мониторинга Вы видите показатель на порядок ниже, стоит задуматься о том, что Вы сделали что-то неверно (либо если Вы купили процессор на Али, Вам подсунули дешевый процессор под видом мощного, что есть мошенничество). В таком случае, скачайте новые драйверы для чипсета, обновите биос, или, если есть возможность, увеличьте частоту (в материнских платах с UEFI и возможностью разгона это выставляется чуть ли не на главном экране. Для AMD таких большинство, а вот для Intel придется погуглить).

Загрузка GPU

Этот параметр показывает загрузку видеопроцессора, в процентах. Здесь выделить нечего, можно лишь посмотреть частоту.

Загрузка контроллера шины GPU

Контроллер шины - это канал между процессором и памятью видеокарты. Чем шире шина, тем лучше. В данный момент бюджетно-средним вариантам видеокарт хватает 128 бит.

Пропускная способность высчитывается по формуле:

Ширина шины памяти / 8 * Частота памяти = N байт/сек

Таким образом, пропускная способность контроллера шины:

64 бит = от 20 Гбайт/сек

128 бит = от 35 Гбайт/сек

256 бит = от 75 Гбайт/сек

384 бит = от 150 Гбайт/сек

512 бит = от 300 Гбайт/сек

Отмечу, что 512 бит - это Хай-энд сектор, в данный момент только некоторые экспериментальные видеокарты могут иметь подобную ширину шины, однако, поскольку параметр зависит и от частоты памяти, вышеприведенная таблица не совсем верна.

Например, ширина шины у GeForce 2080ti составляет 352 бит, а пропускная ее способность - 616 Гбайт/сек.

С этим показателем, как и с остальными - чем меньше в процентах на мониторе производительности, тем лучше.

Загрузка ОЗУ

Простой показатель, дающий понять, на сколько процентов загружена оперативная память.

Загрузка файла подкачки

С этим параметром все не так однозначно. Файл подкачки - это место на жестком диске, который "помогает" оперативной памяти с хранением информации. И поскольку он хранится именно на диске с совершенно любыми параметрами (SSD/HDD, скорость диска, "запиленность", количество битых секторов, размер файла и т.д.), то судить нужно по нему только индивидуально. Файл подкачки, конечно, лучше выставить с небольшим резервом на SSD.

Температурные показатели

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

С модами на игры тоже не стоит перебарщивать
С модами на игры тоже не стоит перебарщивать

Если компонент перегревается, он может выйти из строя или даже "потянуть" за собой в ад материнскую плату. Не допускайте высоких температур внутри корпуса компьютера. Температура процессора с хорошей "башней" охлаждения выше 70 градусов - это нехорошо. В таком случае, скорее всего, у Вашего ПК проблемы с выведением горячего воздуха из корпуса.

Показатели напряжения

Эти показатели отображают напряжение, подающееся на CPU, GPU, ОЗУ. Оно часто кореллирует с колебаниями частоты компонента и его загрузкой.

Так чем мерять-то?

Самая удобная, на мой взгляд, программа для мониторинга производительности, у MSI Afterbirner. Скачать его можно с официального сайта, он бесплатен и прост в настройке. "Палка" для тыкания в кулеры в комплекте.

Можно и скины менять, к слову
Можно и скины менять, к слову

Есть, конечно, и другие программы, но мне по душе продукт от MSI. Уж очень удобно.

К слову о разработчиках игр

Большинство разработчиков игр используют возможности движков, на которых работают, для оценки производительности своих проектов. Например, в Game Maker Studio 2, базовый вариант "из коробки" без каких-либо настроек показывает как FPS (скорость игры, вот такая терминология), так и Real FPS. И если FPS может быть указан явно, то Real FPS - это простое числовое значение, которым можно измерять "теневую" производительность. Простой пример из простенького проекта:

Ну а что, зато 60 фпс в игрк показывает
Ну а что, зато 60 фпс в игрк показывает

Т.е. заблокирована частота кадров на отметке в 60 FPS, а вот реальный...погодите, шесть тысяч?

Да, вот такой запас. Потому что 2д и потому что оптимизация. А вообще, просто движок хороший.

В заключение

Длинная какая-то статья получилась. И наверное, скучная. Однако, надеюсь, она заставит Вас получше осведомиться о состоянии своего компьютера и его быстродействии.

"Экспертов", меряющихся фпс в CS:GO попрошу не лезть - убьет нафиг.

Лайк, подписка, ага.