Главная » Хабрахабр » Так-Так-Так и никакого Тика. Чем отличаются процессоры Intel Core разных поколений на основе одной архитектуры

Так-Так-Так и никакого Тика. Чем отличаются процессоры Intel Core разных поколений на основе одной архитектуры

Обещание уменьшить технологический процесс с 14 до 10 нм так и осталось обещанием, началась долгая эпоха «Така» Skylake, во время которой случился Kaby Lake (седьмое поколение), внезапный Coffee Lake (восьмое) с незначительным изменением техпроцесса с 14 нм до 14 нм+ и даже Coffee Lake Refresh (девятое). С появлением процессоров Intel Core седьмого поколения многим стало понятно, что стратегия «Тик-так», которой Интел следовал всё это время, дала сбой. В итоге мы имеем несколько процессоров разных поколений, которые созданы на основе одной микроархитектуры Skylake, с одной стороны. Кажется, Интелу и правда нужен был небольшой перерыв на кофе. Правда, не очень понятно, чем именно… И уверения Интела о том, что каждый новый процессор — лучше прежнего, с другой.

И посмотрим, чем же они отличаются.
Kaby Lake Поэтому вернёмся к нашим поколениям.

Что же нового у этого семейства относительно его предшественника? Появление процессоров в рознице состоялось в начале 2017 года. Плюс поддержка технологии памяти Intel Optane (3D Xpoint), а также новый чипсет 200-ой серии (6-ое поколение работало с 100-ой серией). Прежде всего, это новое графическое ядро — Intel UHD 630. И на этом из действительно интересных новшеств всё.

Coffee Lake

В процессорах этого поколения добавили ядер и пропорционально кэша третьего уровня, подняли Turbo Boost на 200 мегагерц, добавили поддержку DDR4-2666 (до этого было DDR4-2400), но отрезали поддержку DDR3. 8-ое поколение с кодовым названием Coffee Lake было выпущено в конце 2017 года. За все повышения частот пришлось расплатиться увеличением теплопакета до 95 ватт. Графическое ядро осталось прежним, но ему накинули 50 MHz. Последнее было совсем не обязательно, так как достаточно скоро специалисты смогли запустить это семейство на чипсетах 100-ой серии, хотя представители Интел заявляли, что это невозможно из-за особенностей построения цепей питания. Ну и, конечно, новый чипсет 300-ой серии. Так что же нового в 8-ом семействе? Позднее, правда, Интел официально признал, что был не прав. По факту больше похоже на обычный рефреш с добавлением ядер и частот.

Coffee Lake Refresh

А вот нам и рефреш! Ха! Аппаратные изменения, внесённые в новые чипы, защищают от Meltdown V3 и L1 Terminal Fault (L1TF Foreshadow). В четвёртом квартале 2018 года были выпущены процессоры Coffee Lake 9-го поколения, оснащённые аппаратными средствами защиты от некоторых уязвимостей Meltdown/Spectre. Защита от Spectre V1 по-прежнему будет осуществляться исправлениями на уровне операционной системы. Изменения в программном обеспечении и микрокоде защищают от атак Spectre V2, Meltdown V3a и V4. Но всю эту радость с защитами Интел реализовала только в процессорах для массового сегмента рынка: i7-9600k, i7-9700k, i9-9900k. Появление исправлений на уровне кристалла должно уменьшить влияние программных патчей на производительность процессоров. Впервые в истории потребительских процессоров Intel процессоры Coffee Lake Refresh поддерживают до 128 ГБ оперативной памяти. Всем остальным, включая серверные решения, аппаратных защит не отсыпали. И всё, больше никаких изменений.

Два года рефрешей, игры с ядрами и частотами, плюс набор мелких улучшений. Что мы имеем в сухом остатке? Поэтому, когда у меня под рукой оказался комплект от седьмого до девятого поколения — к нашим i7-7700 и i7-7700k недавно добавились свежие i7-8700, i7-9700k и i9-9900k, я воспользовался ситуацией и заставил пять разных процессоров Intel Core показать, на что они способны. Очень хотелось объективно оценить и сравнить производительность основных представителей этих семейств.

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

В тестировании участвуют пять процессоров Intel: i7-7700, i7-7700k, i7-8700, i7-9700k, i9-9900k.

Тактико-технические характеристики платформ

Процессоры Intel i7-8700, i7-9700k и i9-9900k имеют одинаковую базовую конфигурацию:

  • Материнская плата: Asus PRIME H310T (BIOS 1405),
  • Оперативная память: 16 Гб DDR4-2400 MT/s Kingston 2 штуки, итого 32 Гб.
  • SSD-накопитель: 240 Гб Patriot Burst 2 штуки в RAID 1 (привычка, выработанная годами).

Процессоры Intel i7-7700 и i7-7700k также работают на одинаковой платформе:

  • Материнская плата: Asus H110T (BIOS 3805),
  • Оперативная память: 8 Гб DDR4-2400MT/s Kingston 2 штуки, итого 16 Гб.
  • SSD-накопитель: 240 Гб Patriot Burst 2 штуки в RAID 1.

Мы используем самодельные шасси высотой в 1,5 юнита. В них размещаются четыре платформы.

6. Программная часть: ОС CentOS Linux 7 x86_64 (7. 10. 1810).
Ядро: 3. 1. 0-957. 3.el7.x86_64
Внесённые оптимизации относительно штатной установки: добавлены опции запуска ядра elevator=noop selinux=0.

Не исключено, что результаты тестирования на более новых и актуальных ядрах Linux могут отличаться от полученных, а показатели будут лучше. Тестирование производится со всеми патчами от атак Spectre, Meltdown и Foreshadow, бэкпортированными в данное ядро. На то и надеюсь 🙂 Но, во-первых, лично мне CentOS 7 милее, а, во-вторых, RedHat активно занимается бэкпортированием новшеств, связанных с поддержкой оборудования, из новых ядер в своё, LTS.

Тесты, которые использовал для исследования

  1. Sysbench
  2. Geekbench
  3. Phoronix Test Suite

Тест Sysbench

Тест многопоточный, на все ядра. Sysbench — пакет тестов (или бенчмарков) для оценки производительности разных подсистем компьютера: процессор, оперативная память, накопители данных. В этом тесте я замерял два показателя:

  1. CPU speed events per second — количество выполненных процессором операций за секунду: чем выше значение, тем производительнее система.
  2. General statistics total number of events — общее количество выполненных событий. Чем показатель выше, тем лучше.

Тест Geekbench

В результате выдаётся некий индекс производительности для обоих режимов. Пакет тестов, проводимых в однопоточном и многопоточном режиме. В этом тесте мы рассмотрим два основных показателя:
— Single-Core Score — однопоточные тесты.
— Multi-Core Score — многопоточные тесты.
Единицы измерения: абстрактные «попугаи». Ниже есть ссылки на результаты тестов. Чем больше «попугаев», тем лучше.

Тест Phoronix Test Suite

Несмотря на то, что были проведены все тесты из пакета pts/cpu, приведу результаты только тех из них, которые лично мне показались особенно интересными, тем более, что результаты упущенных тестов только подкрепляют общую тенденцию. Phoronix Test Suite — очень богатый набор тестов.

Исключение составляют лишь два из них: однопоточные тесты Himeno и LAME MP3 Encoding. Почти все представленные тут тесты — многопоточные.

В этих тестах чем показатель больше, тем лучше

  1. Многопоточный тест John the Ripper для подбора паролей. Возьмём криптоалгоритм Blowfish. Измеряет количество операций в секунду.
  2. Тест Himeno — линейный решатель давления Пуассона, использующий точечный метод Якоби.
  3. 7-Zip Compression — тест 7-Zip с использованием p7zip с интегрированной функцией тестирования производительности.
  4. OpenSSL — это набор инструментов, реализующих протоколы SSL (Secure Sockets Layer) и TLS (Transport Layer Security). Измеряет производительность RSA 4096-бит OpenSSL.
  5. Apache Benchmark — тест измеряет, сколько запросов в секунду может выдержать данная система при выполнении 1 000 000 запросов, при этом 100 запросов выполняются одновременно.

А в этих если меньше, то лучше

  1. C-Ray тестирует производительность CPU на вычислениях с числами с плавающей запятой. Этот тест является многопоточным (16 потоков на ядро), будет стрелять 8 лучами из каждого пикселя для сглаживания и генерировать изображение 1600x1200. Измеряется время выполнения теста.
  2. Parallel BZIP2 Compression — тест измеряет время, необходимое для сжатия файла (пакет .tar исходного кода ядра Linux) с использованием сжатия BZIP2.
  3. Кодирование аудио- и видеоданных. Тест LAME MP3 Encoding выполняется в один поток, а тест ffmpeg x264 — многопоточный. Измеряется время прохождения теста.

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

Собственно, поэтому выбор и пал на синтетику. Синтетический тест, в отличие от теста, который проводится в условиях, приближенных к реальности, способен обеспечить определённую чистоту эксперимента.

Так же не исключено, что при отключении защиты от Spectre/Meltdown при тестировании процессоров 9-ого поколения, я мог бы получить более высокие результаты. Не исключено, что при решении частных задач в боевых условиях вы сможете получить крайне интересные и неожиданные результаты, но всё же «общая температура по больнице» будет максимально приближена к тому, что получилось у меня по результатам тестов. Но, забегая вперед, скажу — они и так отлично себя показали.

Спойлер: балом будут править ядра, потоки и частоты.

Причём, не столько существенных, сколько экстраординарных: зачем ждать интересных показателей в тестах, если проводишь измерения на процессорах, построенных, в сущности, на одном ядре. Ещё до тестирования я внимательно изучил архитектуру семейств этих процессоров, поэтому ожидал, что существенных отличий между подопытными не обнаружится. Мои ожидания оправдались, но кое-что всё же оказалось не совсем так, как я думал…

А теперь, собственно, результаты тестов.

Соответственно, i7-8700 и i9-9900k впереди. Результат вполне закономерный: у кого больше потоков и выше частота, того и баллы. Отставание i7-7700 от i7-8700 на 38% и от i9-9900k на 49%, то есть почти в 2 раза, но при этом отставание от i7-9700k всего 15%. Разрыв между i7-7700 и i7-7700k 10% в однопоточном и многопоточном тесте.

Ссылки на результаты тестов:

Intel i7-7700
Intel i7-7700k
Intel i7-8700
Intel i7-9700k
Intel i9-9900k

Результаты тестов из пакета Тhe Phoronix Test Suite

У процессоров i7-8700 и i7-9700k разница весьма незначительная. В тесте John The Ripper разница между братьями-двойняшками i7-7700 и i7-7700k в 10% в пользу «k», за счёт разницы в Турбобусте. Двойняшек почти в 2 раза. i9-9900k обгоняет всех за счёт большего числа потоков и большей тактовой частоты.

Наличие технологии Hyper-Treading у i9-9900k в этом многопоточном тесте даёт лишь незначительный прирост относительно i7-9700k. Результат теста C-Ray мне кажется самым интересным. А вот двойняшки отстали от лидера почти в 2 раза.

Ощутимый отрыв 8-ого и 9-ого поколения от двойняшек: i9-9900k обгоняет их на 18% и 15% соответственно. В однопоточном тесте Himeno разница не настолько велика. Разница же между i7-8700 и i7-9700k на уровне погрешности.

За счёт большего количества потоков i7-8700 обгоняет i7-9700k на 9%. Тест на компрессию 7zip двойняшки проходят на 44-48% хуже, чем лидер i9-9900k. Но этого не хватает, чтобы обогнать i9-9900k, поэтому наблюдаем отставание почти на 18%.

Тест на время сжатия алгоритмом BZIP2 показывает аналогичные результаты: выигрывают потоки.

А вот в тесте ffmpeg i9-9900k проигрывает i7-8700 и i7-9700k, но обходит двойняшек. Кодирование mp3 — «лестница» с максимальным отрывом в 19,5%. Вот это уже неожиданно 🙂 В многопоточном тесте самый многопоточный из тестируемых процессоров показал такой невысокий результат, ниже чем у 9700k и 8700. Несколько раз переделал этот тест для i9-9900k, но результат всегда одинаковый. Чётких объяснений сему явлению нет, а предположений делать не хочется.

Разница между двойняшками и лидером i9-9900k от 42% до 47%. Тест openssl показывает «лестницу» с разрывом между второй и третьей ступенью. Главное, потоки и частоты. Разрыв же между i7-8700 и i9-9900k 14%.

Но в общих чертах разница не существенная, хотя между худшим результатом i7-7700 и лучшим у i7-9700k отрыв в 24%. В тесте Apache i7-9700k обошёл всех, включая i9-9900k (6%).

Соберетесь работать с видео, возьмите лучше i7-9700k или i7-8700. В целом, в большинстве тестов лидирует i9-9900k, провал только на ffmpeg. Так что его и i9-9900k смело советую тем, у кого регулярно случаются большие наплывы пользователей на сайт. На втором месте в общем зачёте i7-9700k, он незначительно отстаёт от лидера, а в тестах ffmpeg и apache даже опережает. Про видео я уже сказал. Процессоры подвести не должны.

У i7-8700 хорошие показатели по тестам Sysbench, 7zip и ffmpeg.
Во всех тестах i7-7700k лучше i7-7700 от 2% до 14%, в тесте ffmpeg 16%.
Напомню, что никаких оптимизации, кроме указанных в начале, я не делал, а это значит, что при установке чистой системы на свежекупленном у нас дедике, вы получите точно такие же результаты.

Ядра, потоки, частоты — наше всё

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

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

В тесте же Sysbench как раз наоборот: решает не количество ядер, а количество потоков.
Очень большой разрыв в многопоточных тестах между i7-7700(k) и i9-9900k, местами аж в два раза. Разница между процессорами i7-9700k и i9-9900k во всех тестах, кроме Sysbench, стремится к нулю, так как по сути отличаются они лишь наличием технологии Hyper-Threading и сотней дополнительных мегагерц в режиме Turbo Boost у i9-9900k. Также есть разница между i7-7700 и i7-7700k — лишние 300 MHz добавляют прыткости последнему.

Тем более, включённая защита семейства Spectre/Meltdown должна изрядно уменьшать влияние его объёма на результаты теста, но это не точно. Также не могу говорить о качественном влиянии объёма кэш-памяти на результаты тестов — имеем, что имеем. Если уважаемый читатель потребует «хлеба и зрелищ» от нашего отдела маркетинга, я с удовольствием выкачу вам тестирование с отключенной защитой.

— я бы для начала посчитал деньги в кармане, и выбрал тот, на который хватает. Собственно, если бы меня спросили: а какой процессор ты сам выберешь? Процессоры, в основе которых лежит одна архитектура, так или иначе будут справляться с одинаковым спектром задач — кто-то просто хорошо, а кто-то отлично. Если коротко, то из точки в А в точку Б можно доехать и на «Жигулях», но на «Мерседесе» всё же быстрее и приятней. Но разрыв между i7 и i9 от этого никуда не делся. Да, как показало тестирование, глобальных отличий между ними нет.

Например, дизайнерам можно сразу смотреть на i7-9700k и i9-9900k, а под сложные вычисления брать процессор с технологией Hyper-Threading, то есть любой, кроме i7-9700k. При выборе процессора для некоторых частных узкоспециализированных задач, как работа с mp3, компиляция из исходников или рендеринг трёхмерных сцен с обработкой света, имеет смысл ориентироваться на показатели соответствующих тестов. Тут рулят потоки.

Так что советую выбирать то, что можете себе позволить с учётом спецификации, и будет вам счастье.

Любой из них можно заказать со скидкой 5% на 3 месяца — обратитесь в отдел продаж с кодовой фразой «Я с Хабра». В тестировании использовались серверы на базе процессоров i7-7700, i7-7700k, i7-8700k, i7-9700k и i9-9900k с 1dedic.ru. При оплате за год минус ещё 10%.

Весь вечер на арене Trashwind.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

Киберпреступники пять месяцев контролировали ASUS Live Update

Злоумышленники разместили на сервере вредоносный файл с бэкдором, подписанный валидным сертификатом ASUS. Как сообщает «Лаборатория Касперского», хакеры из APT-группировки ShadowHammer 5 месяцев контролировали сервис обновлений ASUS Live Update и заразили более полумиллиона компьютеров по всему миру.Исследователи из «Лаборатории Касперского» обнаружили, ...

Kubernetes 1.14: обзор основных новшеств

14. Этой ночью состоится очередной релиз Kubernetes — 1. По сложившейся для нашего блога традиции, рассказываем о ключевых изменениях в новой версии этого замечательного Open Source-продукта. 14 и сооветствующих issues, pull requests, Kubernetes Enhancement Proposals (KEP). Информация, использованная для подготовки ...