Раздел Технологии выходит при поддержке Favbet Tech
Какой компонент компьютера виноват в плохой игровой производительности? Что такое «узкое горло» или bottleneck в мире ПК, кто виноват в первую очередь, и что должен знать каждый фанат компьютерных видеоигр? А может дело вообще не в аппаратном обеспечении? Давайте разберемся с этим явлением по порядку.
Содержание
- 1 Что такое «узкое место»?
- 2 Процессор, видеокарта или разработчик?
- 3 Большие и дорогие проекты
- 4 Киберспорт и не только
- 5 Стратегии реального времени, или ночной кошмар для вашего ПК
- 6 Выводы
Что такое «узкое место»?
«Bottleneck» дословно переводится как «горло бутылки», а мире компьютеров имеет перевод «узкое горло», «узкое место». То есть это то, что ограничивает скорость работы системы, а точнее какой-то один компонент, из-за которого остальные работают не на полную мощность.
Например, механик собрал автомобиль со сверхмощным двигателем, но не позаботился о качественной подвеске. Прямые дистанции на 400 метров это авто проходит быстро, всегда в лидерах, но проигрывает другим авто в классических гонках на треке, ведь буквально разваливается в поворотах.
То есть подвеска стала тем компонентом, который нарушил баланс в определенных условиях использования. Двигатель работает едва на половину мощности, чтобы гонщик успевал вписываться в повороты, ведь авто всегда заносит.
В сообществе компьютерных фанатов часто говорят: «упирается в видеокарту», «упирается в процессор», но почти никогда не говорят о проблемах программного характера, в которых виноваты сами разработчики видеоигры.
В компьютерах bottleneck условно можно разделить на три категории:
Онлайн-курс "Чистий код та патерни проєктування" від robot_dreams. Прискорюйте й спрощуйте процес розробки. Під менторством лектора з 20-річним досвідом ви навчитеся застосовувати 30+ патернів, опануєте рефакторинг і принципи чистого коду. Детальніше
- Видеокарта – самый распространенный вид «узкого горла» среди консольных портов для компьютеров. Замена видеокарты на более производительную заметно увеличивает частоту кадров;
- Процессор – игра нетребовательна к графическому ускорителю, зато частота кадров сильно возрастает с заменой процессора на более производительный, а на смену видеокарты никак не реагирует. Распространенный bottleneck, особенно среди любителей заменять GPU, оставляя старую основу компьютера;
- Движущая сила игры – под нагрузкой двигателя (большое количество объектов на экране) получаем низкую частоту кадров с компьютером любого класса. Изменение видеокарты никак не влияет на FPS, но более мощный процессор может добавить несколько % производительности, которая будет все еще неприемлемо низкой. Этот bottleneck является главным атрибутом некачественно сделанных видеоигр, особенно жанров RTS, RPG, MMORPG;
- Накопитель – относительно свежий вид «узкого горла», связанный с новыми стандартами разработки видеоигр, а именно сильной компрессией игровых ресурсов. В некоторых современных играх с открытым миром медленный HDD может вызывать кратковременные подвисания, но на средний FPS это почти не влияет. Встречается очень редко;
Также некоторые еще считают «узким горлом» оперативную память. Это не совсем уместно во всех случаях, кроме интегрированных решений. Например, для владельца AMD Ryzen 7 8700G разница между одноканалом и двухканалом будет огромной. Более высокие частоты RAM также влияют на быстродействие APU в играх.
Скоростная оперативка добавляет несколько % производительности в играх, где упираемся в процессор. Для случая, когда видеокарта загружена на 100%, прироста от изменения ОЗУ не получим, зато в киберспортивных дисциплинах это может добавить от 1 до 10% FPS. Впрочем, есть ли радость от 275 FPS, если без разгона ОЗУ было 255 FPS?
Есть ситуации, когда самые мощные компьютеры современности становятся на колени, а глаза игрока слезятся от слайд шоу и сразу непонятна причина таких просадок FPS. На самом деле оптимизация и качество написания самой игры решают гораздо больше любой начинки.
Бывает так, что топовые ПК не способны обеспечить стабильную частоту кадров в некоторых играх, а виной этому является криво написанное программное обеспечение. Ни один процессор современности или самая мощная видеокарта не помогут решить проблему, о которой поговорим ниже.
Вообще не обязательно (и почти невозможно) иметь идеальную сбалансированную систему. Вполне нормально, когда видеокарта загружена на 95-100%, или работает на 40-50%, как и процессор (в киберспорте только так). Главное, чтобы конечный результат, то есть производительность была на высоких ровная.
Процессор, видеокарта или разработчик?
Давайте рассмотрим несколько различных примеров, популярные видеоигры разных жанров и типов, чтобы понять виды «узкого горла» в компьютерных играх. Оказывается, есть много игр, которые не под силу современному ПК премиального класса, а некоторые игрушки выжимают из него все соки, заставляя работать, как во время стресс-тестов.
Онлайн-курс "Чистий код та патерни проєктування" від robot_dreams. Прискорюйте й спрощуйте процес розробки. Під менторством лектора з 20-річним досвідом ви навчитеся застосовувати 30+ патернів, опануєте рефакторинг і принципи чистого коду. Детальніше
Определим главных виновников (процессор, видеокарта, движок игры) и проанализируем на простых, понятных примерах. Сыграем не только хиты, но и малоизвестные проекты, которые являются образцовыми для понимания всей проблемы игровых движков.
Проверяли игры на компьютере с процессором AMD Ryzen 9 7900 и видеокартой AMD Radeon RX 7900 XTX. Оперативная память Kingston Fury 2х16 ГБ 6000 МТ/с и CL30 с помощью пресета MSI Memory Try It. (XMP профиль 6000CL40).
Видеоигры тестируем в разрешении 1920x1080p, чтобы показать разные виды «узкого горла», а начнем с лучших ААА проектов с наивысшим уровнем оптимизации от гуру в сфере геймдева.
Большие и дорогие проекты
Battlefield 2042 — одна из немногих современных видеоигр, которая загружает 8, 12 или 16 ядерные процессоры на 100%, буквально. Игра умеет использовать все возможности центрального процессора. 12-ядерный AMD Ryzen 9 7900 работает на 85-99% в этой игрушке, выдавая 250-300 FPS.
С разрешением 1080p не упираемся в возможности видеокарты, хотя она также изрядно загружена. Если играть на ультра настройках графики, то нагрузка немного вырастет, на 20-25%, а переход к разрешению Ultra HD тем более загрузит графический процессор по полной.
Battlefield 2042 является образцово оптимизированной игрой, которая показывает оба вида bottleneck’а. Эта забава обязательно поставит на колени какой-то из компонентов в вашем компьютере, в зависимости от процессора, видеокарты и разрешения монитора.
Как уже писали выше, на средних картах в Battlefield 2042 получаем 250-300 FPS. При этом частота кадров очень и очень стабильна относительно других онлайн шутеров (и не только).
Например, в Counter Strike на открытых локациях с большим количеством игроков можно увидеть 180 FPS, а в закрытом коридоре на том же компьютере 400-600 FPS. При этом загруженность процессора незначительная, в пределах 15-20%, ведь работает лишь часть потоков Это признак плохой оптимизации, непрофессиональных разработчиков и слабого движка игры.
Battlefield 2042 не имеет таких резких скачков, сохраняя частоту кадров стабильной с минимальными колебаниями. Картинка плавная, видеоряд стабильный, нет статеров, ведь игра использует всю мощность компьютера на полную.
FPS держится примерно на том же уровне независимо от того, где на карте находится игрок, сколько противников на экране, взрывных эффектов и тому подобное. Это признак хорошей оптимизации, профессиональных разработчиков и качественного движка игры.
Итак, в Battlefield 2042 «узким местом» может быть процессор или видеокарта, но никак не движок игры, который является образцовым, идеальным примером того, как игра должна использовать ресурсы компьютера. Таких технически крутых игр на самом деле очень мало, вымирающий вид.
Forza Horizon 5 значительно более простая игра. Казуальные гонки в открытом мире не требуют значительной процессорной производительности, но эта игрушка довольно требовательна к видеокарте. Трудно найти систему, где не хватает процессора для этой игры, а графический адаптер отдыхает.
Даже в 1080p AMD Radeon RX 7900 XTX работает на полную мощность. Конечно, настройки графики EXTREME вовсе не обязательны, ведь ультра графика в ААА играх ненужный, а в большинстве случаев лишняя. С профилем HIGH получили бы значительно больше FPS, но есть ли смысл для такой игры переходить границу 200-240 кадров в секунду?
Однозначно, Forza Horizon 5 зависима в большей степени от GPU. Движок игры качественный, позволяет получить 200+ кадров в секунду с системой среднего класса, если не гнаться за трассировкой лучей. Требования к CPU невысокие, ведь достаточно 4-6 ядерного бюджетного процессора, чтобы играть со стабильно высоким FPS.
Большинство однопользовательских игр именно такие, то есть требуют видеокарты более высокого класса, чем процессор. Например, сборка Intel Core i3-13100F + Nvidia RTX 4070 Super прекрасно подходит для Quad HD или Ultra HD мониторов.
Microsoft Flight Simulator 2020 является уникальным симулятором, единственным в своем роде. Это удивительная игра с невероятно большими масштабами — карта в игре это вся наша планета Земля с миллионами населенных пунктов, сотнями миллиардов деревьев и реалистичным ландшафтом.
MFS 2020 не был бы таким, если бы не большая дальность рисования объектов. С самолета можно увидеть здания, горы, реки за десятки километров. Полеты над двадцатимиллионным мегаполисом с тысячами Это едва ли не единственный случай, когда ультра графика действительно дает свои результаты.
К чему это все? Для разработчика реализовать такую сложную игру с большим количеством объектов очень тяжело. Например, в GTA V при увеличении дальности рендера сильно снижается FPS (упираемся в движок), а в MFS 2020 частота кадров более-менее стабильна в разных локациях.
Проблемой остается плохое распределение нагрузки на ядра процессора, поэтому в самых тяжелых локациях можно увидеть 35-40 FPS с флагманским процессором (спасет лишь генератор кадров).
Итак, с разрешением Full HD в разрешении Full HD в Microsoft Flight Simulator 2020 упираемся в возможности игрового движка, но можно ли винить разработчиков, если они сделали первый и единственный проект такого масштаба без намека на конкуренцию?
С 4K монитором или слабым графическим ускорителем будем упираться именно в возможности GPU, а не CPU. Интересно и то, что в этом симуляторе встречается bottleneck всех видов, поэтому рассмотрим такие конфигурации и случаи «узкого горла» для MFS 2020:
- AMD Ryzen 5 3600 + Nvidia RTX 3070 Ti, Full HD. Здесь однозначно упираемся в возможности процессор. В тяжелых локациях следует ожидать просадки до 15 FPS с неполной загрузкой GPU;
- Intel Core i9-12900K + AMD RX 7900 XT. Ultra HD. Этой конфигурации однозначно не хватает видеокарты с максимальными параметрами графики;
- AMD Ryzen 7 7800X3D + Nvidia RTX 4090. Wide Quad HD. Без генератора кадров Nvidia не получим идеально плавную картинку и будем всегда видеть неполную загрузку всех компонентов. С лучшим игровым процессором современности и самой производительной в мире видеокартой упираемся в возможности игровой движущая сила;
- AMD Ryzen 7 7800X3D + Nvidia RTX 4090 + HDD. Wide Quad HD. Эта забава непрерывно загружает данные из сети, на ходу рендерит текстуры, да еще и в большом количестве, поэтому категорически нельзя ставить MFS 2020 на жесткий диск. Получим просадки FPS и до двадцати раз длиннее загрузки относительно 2 PCI-E 4.0 SSD. Упираемся в возможности накопитель.
Киберспорт и не только
Популярность ААА (читай консольных) игрушек на компьютерах не слишком высока, поэтому рассмотрим еще и другие, гораздо более интересные примеры, где не все так однозначно. С момента выхода DOTA 2 прошло много времени, сотни обновлений, десятки глобальных патчей и изменений.
Игру поддерживают и наполняют контентом, ведь в нее до сих пор играют миллионы пользователей. Из-за появления новых механик, героев, предметов, большой карты, сотен косметических предметов с уникальными эффектами старый (как мир) движок игры получает дополнительную нагрузку и нуждается в оптимизации.
На самом деле оптимизация видеоигр — сложная задача, требующая много ресурсов, прежде всего человеческих. Разработчику достаточно обеспечить комфортную производительность игры для современного игрового компьютера, не обращая внимание на то, что сама игра уже 13 летней давности.
Движок DOTA 2 показывает огромные колебания частоты кадров в зависимости от ситуации на экране. На малой карте для тренировки можно увидеть 500+ FPS с AMD Ryzen 9 7900. Видеокарта, естественно, отдыхает с энергопотреблением 80 Вт.
Достаточно нажать несколько способностей 400-550 FPS превращаются в 200, 150, 100 FPS. На самых мощных системах современности (на которых играют успешные киберспортсмены) запросто получим десятикратное падение быстродействия, если на экране появляется много эффектов, героев, юнитов и тому подобное.
Это показательный пример, когда «узким горлом» становится именно движущая сила игрытак как процессор загружается на 15-25%, работая на половину или треть своего TDP, разгон ОЗУ почти не помогает, а смена видеокарты тем более ничего не решает, как и тип накопителя.
Главное, что играть такие игры все еще можно с мощным процессором, ведь падение с 240 FPS в начале игры до 50-100 FPS в активных битвах это все еще нормально для такого жанра, где совсем не нужна быстрая реакция, но владельцы старых компьютеров могут иметь проблемы.
Среди компьютерных геймеров часто встречаются системы с сильным «перекосом» в сторону видеокарты. Это худшее, что может быть для киберспорта. Большинство популярных игр для ПК зависят прежде всего от процессора, потому что имеют некачественные игровые движки с ужасной оптимизацией. Замена ЦП на более производительный поможет хоть немного спасти ситуацию, а видеокарта ни на что не влияет.
Fortnite имеет похожее поведение с таким же «узким горлом», но более стабильное. Разработчик этой игры стоит на три головы выше создателей DOTA 2, поэтому игра ведет себя более предсказуемо.
Например, высаживаемся в отдаленном месте на карте, видим 400-500 FPS, убиваем одного игрока и несколько ботов с частотой кадров 300-400 FPS, а с приближением к центру, где находится больше реальных игроков и больше объектов в зоне видимости и частота кадров падает до 180-250 FPS.
Однозначно с таким ПК у Fortnite также упираемся в возможности игрового движка. Но с AMD Ryzen 9 7900 увидеть 100 FPS, как в DOTA 2 (особенно с героем Broodmother, который создает много юнитов, которые так не любит слабый движок), будет невозможно.
В бюджетных компьютерах «узким местом» станет процессор, но есть и редкие случаи, когда игрок включает ультра графику (или хотя бы высокую), а не самую низкую. При таких условиях можно загрузить видеокарту на 100% и дать безумное преимущество противникам в видимости (именно поэтому все успешные игроки играют только с минимальными параметрами графики).
Lara Croft and The Guardian of Light не является онлайн игрой и одновременно не является образцом оптимизации, ведь со слабыми ЦП частота кадров запросто упадет ниже 60 FPS. На момент выхода игрушка была весьма требовательной к процессору, а сейчас упираемся в возможности движущая сила.
Поменяем 12-ядерный AMD Ryzen 9 7900 на 12-ядерный Intel Xeon E5-2678v3 и частота кадров упадет в несколько раз, пропорционально производительности одного ядра. То есть почти все видеоигры такого плана, а особенно киберспортивные, зависят от быстродействия одного ядра процессора, а не количества ядер.
Если игрока интересуют исключительно киберспортивные дисциплины, то в приоритете должен быть современный процессор с как можно более высокой производительностью Single Core, а количество не решает. Например, 4-ядерный Intel Core i3-14100F положит на лопатки 8-ядерный AMD Ryzen 7 2700X в большинстве видеоигр, которые не умеют распределять нагрузку на все ядра равномерно.
Стратегии реального времени, или ночной кошмар для вашего ПК
Пятикратное падение FPS в DOTA не пугает? Тогда взглянем на те игры, где самых мощных компьютеров хватит лишь для слайд-шоу, а замена процессора может добавить 2-10 FPS. Начнем с украинских разработчиков, а закончим модами от сообщества геймеров, которые не имеют знаний в сфере разработки.
Римейк Cossacks 3 стал настоящим праздником для фанатов классических RTS, а также заставил многих фанатов задуматься над обновлением компьютера. Движок игры на самом деле неплохой, потому что поддерживает огромные карты, километры игрового поля с морями, островами, реками.
Также есть поддержка десятков тысяч юнитов на одной карте, но с серьезным нюансом. Частота кадров сильно зависит от удаленности камеры, количества объектов на экране и взаимодействий между ними. Например, начинаем игру с 350 FPS, ставим несколько зданий и видим 150-190 FPS.
Собрав несколько сотен воинов частота кадров падает до 100-120, а нападение на вражеский город армией из 600 солдат вызывает падение до 70, 60, 50, иногда 30-40 FPS. В ожесточенных онлайн матчах с более слабым процессором (например, Intel Core i5-6600) игроки вынуждены смотреть на слайд шоу 10-20 FPS в больших сражениях.
Зависимость от процессора присутствует, но лишь от производительности на ядро, а не суммарной мощности всех потоков. Зависимости от видеокарты нет вовсе, ведь для Cossacks 3 с головой хватит интегрированных решений AMD или самых слабых дискретных видеокарт современности.
Это не единственная RTS, где движок игры является «узким местом» в системе — на фоне Казаков некоторые проекты выглядят посмешищем. Такой стратегией является Stronghold Crusader 2. Разработчикам было так наплевать на своих игроков, что они выпустили игрушку с DirectX 9 в 2014 году, хотя о девятой версии тогда уже все давно забыли.
Движок игры SHC2 не просто плохой, а ужасный, один из худших среди всех ААА стратегий (если это безобразие вообще можно считать ААА). Казалось бы, ситуация такая, как в Казаках, но масштабы игры в десятки, а иногда в сотни раз меньше.
То есть в Cossacks 3 на экране идёт битва из тысячи, двух, трёх тысяч воинов, огромные битвы, масштабные, эпичные. В Crusader 2 маленькая кучка крестьян идёт на другую кучку крестьян, FPS падает до неграбельных значений, а статеры мозолят глаза.
Разработчики добавили искусственный лимит (общий для всех игроков) 1000 юнитов на карту, ведь прекрасно понимают как плохо оптимизировали свой шедевр. В Stronghold Crusader 2 игровой движок совершенно не умеет работать с большим количеством объектов, а также не умеет загружать центральный процессор.
В начале игры CPU/GPU работают в разы интенсивнее, чем во время осады города двумя сотнями конных лучников, т.е. проблема исключительно в оптимизации игры, в её посредственном движке. 10-20% CPU и нестабильные 20-50 FPS на топовом компьютере это ненормально. Играть невозможно из-за нестабильной графики фреймтайма.
Неважно какой процессор имеет игрок: Intel Core 2 Quad Q6600, AMD A8-7600, Intel Core i5-2500, AMD Ryzen 5 1600, Intel Core i7-13700K или AMD Ryzen 7 7800X3D — эта игра будет «тупить» на любом ПК именно по вине разработчиков, которые допустили фундаментальные ошибки на этапе разработки игрового движка.
Думаете, что это максимум, на что способны стратегии? Когда речь заходит о модах, то ситуация становится еще хуже. Популярная RTS Star Wars: Empire At War так понравилась фанатам, что за 18 лет было выпущено немало модов, причем масштабных.
Стоит похвалить авторов любительских модов за невероятный труд, ведь времени они потратили очень много, но их технические знания и понимание самой игры находятся на самом низком уровне, как у типичного казуального игрока.
Разработчик игры установил жесткие ограничения на количество космических корабликов на поле битвы, ведь понимает недостатки игрового движка. Он просто не умеет работать с большим количеством объектов, поэтому здесь можно увидеть двадцатикратное падение частоты кадров без этих ограничений.
Модификации фанатов имеют следующие ключевые отличия от оригинала:
- Камера сильно удалена. Это нагружает игровой движок, ведь игрок одновременно видит в разы больше объектов;
- Допустимое количество юнитов увеличено в разы. Прежде всего это касается самых маленьких «самолетиков», то есть истребителей, хотя больших кораблей также больше;
- Количество ключевых узлов на больших кораблях увеличено в разы, иногда в десятки раз. Каждый узел представляет собой интерактивный объект (лазерная пушка, ракетная установка, ангар, генератор, двигатель и т.д.), что еще больше нагружает игровой движок;
- Разнообразие юнитов и обновленные текстуры. Различных корабликов стало больше, но это никак не влияет на производительность игры;
- Упрощенная экономика. Игрок получает много ресурсов для непрерывного производства юнитов, что позволяет все время поддерживать максимально допустимый на экране лимит войск.
Это все плохо влияет на FPS по мере наполнения игрового мира. В начале игры имеем 330 FPS, а всего через 10 минут игры с тремя компьютерами этот показатель упал до 25 FPS. Дальнейшее развитие и интенсивные бои с постоянным подкреплением снижают этот показатель до 10-15 FPSа на слабых системах можно увидеть 5 FPS.
Напомним, что игра тестировалась с компьютером на базе AMD Ryzen 9 7900 и AMD Radeon RX 7900 XTX. Это идеальная иллюстрация того, что никакое аппаратное обеспечение не стоит выше программного От качества написанного кода и оптимизации зависит значительно больше, чем от апгрейд ПК.
Выводы
В отличие от консольных игр, компьютерные эксклюзивы редко бывают хорошо оптимизированными, поэтому игроки часто сталкиваются с ограничениями игрового движка, а не дефицитом мощности начинки. ПК стали слишком мощными за последние несколько лет интенсивного развития в условиях конкуренции, но это не помогает играть с комфортом во многие видеоигры.
Некоторые проекты, как Battlefield 2042, удивляют высоким потреблением ресурсов ПК и одновременно высоким FPS (еще и стабильным), а некоторые графически более слабые игрушки, как DOTA 2, просаживают частоту кадров в 5-6 раз в некоторых сценариях.
От этого нельзя уберечься (разве что частично «вытягивает» процессор), ведь игрок ничего не решает. Остается надеяться на разработчиков, что они вложат достаточно ресурсов, времени, сил в оптимизацию игрушки, а не выпустят сырой продукт, который «тупит» на самых мощных ПК современности.
Подытоживая можно сделать выводы в виде тезисов:
- Программное обеспечение было, есть и будет самым важным аспектом для видеоигр. Никакое «железо» не заменит качественную оптимизацию, а также не спасет, если движок плохой;
- Процессор ценнее видеокарты, ведь большинство видеоигр (самые популярные) для ПК зависимы именно от процессора в силу не слишком хорошо оптимизированных игровых движков, которые все еще дают высокий FPS с мощными CPU;
- Видеокарта имеет приоритетное значение для однопользовательских консольных портов, нацеленных на сюжет, особенно с 4K мониторами/телевизорами;
- Оперативная память важна для интегрированных решений. Для систем с дискретной видеокартой ОЗУ также имеет влияние на производительность, хотя и меньшее;
- Накопитель не влияет на игровую производительность, никогда не выступая «узким местом» за редкими исключениями, такими как Microsoft Flight Simulator 2020.
Раздел Технологии выходит при поддержке Favbet Tech
Favbet Tech – это IT-компания со 100% украинской ДНК, которая создает совершенные сервисы для iGaming и Betting с использованием передовых технологий и предоставляет доступ к ним. Favbet Tech разрабатывает инновационное программное обеспечение через сложную многокомпонентную платформу, способную выдерживать огромные нагрузки и создавать уникальный опыт для игроков.