16 потоков на частоте 2,5 ГГц VS 8 потоков на частоте 5 ГГц

Уже в этом году должны выйти новые консоли у Sony и Microsoft. Они получат новое железо, и, в частности, у них будут APU разработки AMD с 8-ю ядрами и поддержкой SMT. Но в отличие от настольных вариантов будут иметь монолитную компоновку с неизвестной в текущий момент иерархией кеш памяти. А также для снижения тепловыделения у них будет низкая частота: 3,2 и 3,5 ГГц. Сейчас неизвестно есть ли планы внедрения поддержки 120 FPS в консолях, но точно можно говорить о том, что есть нацеленность, по меньшей мере, на 60 FPS. В текущих консолях именно процессорная часть, а не графическая не даёт возможность всем играм дать 60 FPS, снизить качество графики не так сложно, чтобы графика могла выдать больше, но для снижения удельной нагрузки на подготовку кадра пришлось бы вырезать из игры часть механик или существенно уменьшать детализацию игровых миров или скрывать дальние объекты дымкой, что когда-то в играх и делали.

Исходя из низких частот процессора встаёт вопрос- как дела сейчас обстоят в современных играх на 16 потоках в таких условиях? Ну и чтобы было интереснее и было с чем сравнивать я решил сделать тесты двух систем с равной теоретической производительностью. Первая система — это 4-х ядерный, 8 поточный процессор на частота 5 ГГц, а вторая система — это 8 ядерный, 16 поточный процессор с частотой 2,5 ГГц. Для этого я использовал два процессора — i9 9900k и i7 7700k.

Оба эти процессора базируются на одной и той же микроархитектуре Skylake. И оба запущены на одной и той же плате Asus Z170i Pro gaming, прошивка которой не включает в себя исправления аппаратных уязвимостей на процессоры, то есть оба процессора находятся в равных условиях и их можно сравнивать. Но есть и причина того что я взял два процессора, а не отключил ядра в i9. А дело в кеш памяти. Как показало одно из моих прошлых тестированей про удвоение кеша — его объём для игр, когда производительность ограничивается процессором — довольно важен. И рост объёма кеша — это одна из неотъемлемых особенностей роста числа ядер. С одной стороны было желание сделать тесты более приближенные к теоретическим, то есть оставить равный объём кэш памяти, урезав i9 до 4-х ядер, с другой стороны мне всё же интереснее было увидеть более реальную картину.

Ещё одним важным критерием тестов была выборка игр. Я подобрал современные игры. Понятное дело, что в старых играх разница будет огромной в пользу i7 на высокой частоте. И не надо делать никаких тестов чтобы спрогнозировать такой результат. Касаемо новых игр, естественно, i7 на высокой частоте тоже будет впереди, но вопрос — на сколько? Точно не в два раза, как был бы в старых играх.

Оперативная память в тесте была выставлена на частоте 3600 МГц родным XMP профилем моей памяти. То есть и не медленная память и не супер быстрая.

Важно ещё было в играх не отключать никакие процессорозависимые настройки графики, но так как самая производительная графика имеющаяся у меня RTX 2070 не смогла бы полностью быть загруженной с i7 на 5 ГГц, то в играх я использовал максимальные пресеты настроек графики, но в сниженном разрешении или не полным рендерингом кадров и без полноэкранных сглаживаний.

Таким образом можно было не снижая удельную нагрузку на процессор на кадр увеличить FPS так чтобы недостаточно производительная видеокарта не портила результаты. Но даже в таком виде удалось протестировать не все игры. Допустим для RDR2 для достижения необходимой нагрузки пришлось бы снизить настройки которые бы начали влиять на нагрузку на процессор, а в данном тесте очень важно разнообразие применяемых играми технологий, так как зачастую вопрос поддержки многоядерности процессора сводится к разбиению всех задач на различные типы на отдельные потоки, и только часть работы, типа вызовов на отрисовку современные API могут равномерно распределить по всем процессорным ядрам. И если убрать часть графических настроек, то это создаст искусственный перевес в пользу 4-х ядерного процессора, не отражающий реальность.

Поэтому игры где не удавалось получить требуемые условия исключались из тестирования.

Помимо игр я ещё провёл тестирование процессоров в бенчмарках. И получил ожидаемые результаты. В тестах которые мало зависят от оперативной памяти, типа CPU-z и Cb-R15 результаты у процессоров схожи с небольшим перевесом в пользу i9 так как у него всё же больше объём кеша, но в этих тестах перевес не из-за самого объёма, а из-за ПС кеша, так как больше блоков памяти к которым возможен одновременный доступ в i9.

(нажмите для увеличения)

В 7-Zip отрыв i9 ещё чуть выше.

Ну и напоследок ещё посмотрим на разницу в тесте win-rar, который очень любит низкие задержки, которые благодаря большему объёму кешей при равном объме данных сильно ниже у i9, и тут результаты самые показательные.

Тестирование в играх

Помимо обычных графиков времени кадра я ещё записал логи с загрузкой CPU и GPU. Ещё раз напомню, что неполная загрузка процессора на 100% не говорит о том, что процессор загружен не полностью, о том как так выходит было даже отдельное видео.

Так что о предельной нагрузке на процессор можно судить по загрузке видеокарты. Если она ниже 90%, то можно говорить о том, что процессор был загружен предельно возможной для данных условий, и графики загрузки видеокарты я оставляю только для того чтобы вы могли быть уверены, что я не допустил ошибок при тестировании сделав тест видеокарты вместо тестов процессора.

На графиках все данные по i9 показаны сплошными линиями, для i7 — пунктирными.

Процент загрузки видеокарты показан зелёным, процессора — тёмно жёлтым цветом.

Горизонтальная чёрная линия показывает уровень 100% загрузки.

(нажмите для увеличения)

Исходники всех логов и графики можно скачать архивом. (для открытия некоторых файлов необходимо наличие программ msi afterburner и Graph).

Так же мы будем сравнивать и числовые значения результатов тестирования. За 100% будут приняты значения 8 ядерного процессора. И если бы я брал старые игры, которые не способны работать с более чем 8 потоками в принципе, то разница была бы двукратной, или +100 в пользу i7 на более высокой частоте. Иными словами — разница менее 100% будет говорить о том насколько хорошо игра работает с числом потоков более 8. Разница 0% будет говорить о том, что игра работает с 16 потоками в равной степени эффективно как и с 8 потоками.

Правда надо учитывать разную кеш память, опять же возвращаясь к реальным условиям. То есть разница в 0% будет говорить в данном тесте о близости эффективности работы с 8 и 16 потоками, а не о равной эффективности.

Числовые данные мы будем сравнивать по двум параметрам — медианные FPS и меньшие 1% мгновенных FPS обратных от времени кадра (Low 1% mFPS). Важным будут и значения сравнения медианного FPS, опять же уже по ранее сказанному критерию нахождения значений между 0 и 100%, а так же относительные смещения разности долей значений меньших 1% относительно медианного FPS.

То есть, допустим. Если по медианному FPS 4 ядра будут быстрее 8 ядер на 100%, а по значению меньших 1% 4 ядра будет быстрее 8 на 25%, то это будет значить, что с 8 ядрами стабильность фреймрейта выше, чем с 4-мя ядрами.

Far Cry 5

8 ядерный процессор на частоте 2,5 ГГц показал медианный FPS около 87. Тогда как 4-х ядерный на частоте 5 ГГц выдал чуть более 126 FPS. Или примерно на 44,5% больше. По меньшим 1% преимущество 4-х ядерного процессора над 8 ядерным примерно 40%. Разница между 44 и 40 в данном срезывании не значительна. То есть можно говорить о том, что по просадкам и долгим кадрам существенных преимуществ большее число потоков не даёт и разница во всём диапазоне длин кадров примерно 40%.

Предельная загрузка 8 поточного процессора в этой игре находится в диапазоне от 40 до 60%. Предельная загрузка 16 поточного процессора составляет примерно 30%.

Shadow of the Tomb Raider

Для 4-х и 8-ми ядерных решений это 111 и 92 FPS по медианным значениям. И это разница всего около 20%. По меньшим 1% разница и вовсе уменьшается до чуть менее, чем 12%. В данном случае можно говорить о том, что игра близка к тому чтобы максимально эффективно распоряжаться всеми 16-ю потоками процессора. По крайней мере она делает это не сильно хуже, чем с 8-ю потоками.

Если смотреть на графики загрузки процессоров, то 8 поточный временами грузился до 90%, что для 8 потоков отличный показатель. 16 поточный загружался временами выше 80%, что тоже великолепный показатель. Естественно мы не знаем сколько из всего этого времени были простои из-за недостатка данных при работе процессорного конвейера, так как эти простои в данных о загрузки числятся как занятое время, а не свободное. Тем не менее игра отлично справляется с 16-ю потоками.

Tom Clancy’s rainbow six siege

На 4-х ядрах с частотой 5 ГГц — медианный FPS — 277, на 8-ми ядрах с частотой 2,5 ГГц — 212 FPS. Разница около 30%. По меньшему 1% — разница примерно 31,5%. Стабильность фреймрейта в системах примерно идентичная.

Предельная загрузка 8 поточного процессора около 75%, 16 поточного — чуть выше 50%.

Результаты похожи на то что было в первой игре.

Watch Dogs 2

И тут мы видим, что на 8 ядерном процессоре у нас получаются медианные FPS чуть ниже, чем на 4 ядерном примерно на 4%, то есть почти на уровне погрешностей. То есть мы вышли на практически недостижимые 0%. Естественно 0% — это был бы недостижимый уровень, если бы объём и иерархия кеш памяти была бы одинаковая, но так как она не одинаковая, то эта разница немного подыгрывает 8 ядернму i9 от чего мы, собственно, и получили значения близкие к исключительно теоретически возможным.

Тем не менее результаты очень интересные, предлагаю рассмотреть плотность вероятности графиков распределения мгновенного FPS этих тестов.

Видно, что на кадрах с обратной длиной ниже 58 FPS i9 обходит i7. В остальном же диапазоне 4-х ядерный процессор обходит 8-ми ядерный.

Стоит отметить, что это единственная игра со старым API в тесте. И это одна из игр где встречается многопоточная обработка вызовов на отрисовку которая массово появилась уже под конец жизни DX11. При этом задержки на ответ процессора всё такие же долгие как и положено для старых API. При этом игра славиться очень огромным числом вызовов, собственно от чего и имеется жуткая процессорозависимость в этой игре. Видимо тут больший объём сохраняемых ресурсов в кеше помогает лучше справляться i9 с задачей.

Если посмотреть на проценты загрузок процессоров, то можно увидеть что 8-ми поточный процессор был загружен под завязку, да и 16 поточный тоже временами грузился выше 80%. Но, опять же, напомню, что измерители загрузки процессора не умеют отсеивать простои процессора из-за отсутствия данных, а тут, как я уже и говорил, простоев на самом деле из-за старого API очень много. 

The Division 2

Медианные FPS 120 и 168 для i9 и i7 соответственно. 4-х ядерный процессор опережает 8-ми ядерный на 40%. Тогда как по меньшиму 1% разница менее 30%. Это говорит о том, что хоть 8 ядерный процессор и медленнее при одинаковой теоретической производительности, но фремрейт у него более стабильный, что тоже важно.

По нагрузке на процессор на 8-ми потоках видна загрузка временами выше 90%, на 16 потоках редко прыгает до 70%.

World War Z

183 и 242 FPS для 8 и 4-х ядер соответственно. i7 во всём диапазоне длин кадров опережает i9 на примерно 32,5%.

По проценту загрузки у i7 около 80, у i9 чуть ниже 50%.

В общем — ничем не примечательные результаты.

Выводы

Во первых — мы видим, что даже на 2,5 ГГц процессор без проблем вытягивает 60 FPS да ещё и с запасом, в консолях будет не intel, а AMD, но Zen2 в целом показывает схожие производительности на такт в играх со скайлеком.

Конечно многое ещё зависит от подсистемы памяти, которая в консолях будет иная, но в целом — данное видео показывает, что скорее всего все игры на новых консолях будут в 60 FPS и выше.

Касаемо игр перед тем как сделать выводы напомню, что это не случайная выборка игр, я брал именно такие игры, где мы ожидаемо должны были увидеть разницу между процессорами менее, чем двукратной. То есть выводы нельзя распространять на все игры.

В данном случае один только факт того что все игры кроме одной с новыми API уже говорит о не репрезентативности этой выборки.

Тем не менее мы в этом тестировании увидели, что существует некоторое число игр в которых мы не увидели двукратного падения производительности на 16 потоках с двукратно меньшей частотой в сравнении с 8 поточным процессором. И это интересные результаты. Допустим когда я только начал вести канал приходилось с лупой искать хоть какой-то прирост для 8 потоков. Сейчас же и без лупы можно найти прок от 16 потоков в сравнении с 8-ю и не в одной игре. Думаю в текущий момент можно было бы найти даже больше десятка игр где разница была бы сильно меньше 100%.

В общем — прогресс на лицо.

С приходом новых консолей — ситуация будет продолжать развитие в данном направлении.

С другой стороны тут же мы видим и то, что и 8-ми поточный процессор даже в тяжёлых играх выдаёт такой FPS, что приходится для тестов снижать разрешение, то есть бежать обновляться имея на руках 4-х или 6-ти ядерный i7 ещё рано.

Видео на YouTube канале "Этот компьютер"

Добавить комментарий