H Насколько медленнее будет ваша система после патчей для Spectre-Meltdown?




В начале недели компания Intel выпустила обновление микрокода для большого числа актуальных и устаревших моделей процессоров. Обновление доступно в виде пакетов для Red Hat Enterprise Linux, SUSE Linux Enterprise Server, CentOS, Fedora, Ubuntu, Debian и Chrome OS, позволяющих обновить микрокод без обновления BIOS. Обновление микрокода не отменяет необходимости применения KPTI-патчей к ядру Linux (микрокод необходим для полноценного закрытия уязвимости Spectre);

Также Intel опубликовала данные об изменении производительности систем с процессорами 6, 7 и 8-го поколений после обновлений безопасности, связанных с закрытием уязвимостей “Spectre” и “Meltdown”, собранные как от пользователей, так и с помощью синтетических тестов.

Под катом несколько интересных выводов из данных, опубликованных Intel, а также о воздействии патчей на Linux-системы:

Результаты исследования Intel для клиентских систем


  • Результат, полученный для теста SYSMark 2014 SE Data/Finance Analysis, оказался весьма обнадеживающим для бизнес-пользователей.
  • Геймеры также должны вздохнуть с облегчением, так как тест 3DMark Sky Diver показывает, что производительность игр DX11 практически не подвержена влиянию обновлений безопасности.
  • Тест, который показал наибольшее снижение производительности — SYSMark 2014 SE Responsiveness. Он показал, что производительность снижается на величину до 21% для рабочих нагрузок, таких как запуск приложений, запуск файлов, просмотр веб-страниц с несколькими вкладками, многозадачность, копирование файлов, шифрование и сжатие файлов, а также установка фонового приложения.

Влияние обновлений на платформах с процессорами 8-го поколения (Kaby Lake, Coffee Lake) с твердотельными накопителями невелико — менее 6 процентов. В некоторых случаях пользователи могут видеть более заметный эффект. Например, пользователи, которые используют веб-приложения, которые связаны со сложными операциями JavaScript, могут иметь несколько более высокие потери быстродействия — до 10 процентов.

Влияние на производительность Skylake несколько выше, но в целом соответствует наблюдениям на платформах 8-го и 7-го поколений (приблизительно 8 процентов в тесте SYSMark2014SE). Также проведены замеры производительности на одной платформе с Windows 7. Наблюдаемое воздействие менее значительное (приблизительно 6% в тесте SYSMark2014SE). Эффект еще ниже на системах с жесткими дисками вместо SSD. Таким образом, ПК с Windows 7 и HDD практически не теряют производительности.

Результаты доступны в таблице ниже.


В pdf-формате доступно по ссылке.

Подробнее о тестах


BAPCo SYSmark 2014 SE

Следующие приложения (сгруппированные по сценарию) устанавливаются и/или используются в SYSmark 2014 SE.






PCMark 10

PCMark 10 содержит тесты, которые охватывают широкий спектр работ, встречающихся в современном офисе: от повседневных потребностей и приложений до требовательной к ресурсам работы с медиа-контентом.



3DMark Sky Diver

WebXPRT 2015

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

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

Производительность Linux-серверов


В настоящее время усилия вендоров по защите направлены на исключение трех векторов возможных атак.

Патчи против Meltdown реализуют техники KPTI (Kernel Page Table Isolation — изоляция таблицы страниц ядра) и KAISER (Kernel Address Isolation to have Side-channels Efficiently Removed — изоляция пространства адресов ядра во избежание атак по стороннему каналу).

До обновлений от Intel, о которых сказано в начале статьи, в прошлый четверг специалисты Google рассказали о программной конструкции retpoline, созданной ими для защиты от атак Spectre.

Подробнее о Retpoline

«Техника Retpoline в настоящее время вводится в компилятор Clang/LLVM как средство защиты от одного из вариантов Spectre-уязвимостей, — говорит Джефф Танг (Jeff Tang), старший аналитик в Cylance. — Однако компилятор LLVM преимущественно используется в Apple macOS, некоторых Linux и BSD-дистрибутивах, а также в Google Chrome. В этом списке отсутствуют Microsoft Windows и другие популярные программы для Microsoft Windows, которые обычно используют компилятор C/C++ производства Microsoft».

Google сообщает, что техника retpoline уже развернута в облачной инфраструктуре и ее влияние на производительность «ничтожно». Michael Larabel основатель Phoronix.com провел тестирование Linux-систем с Retpoline Patch. В целом, его исследование это подтверждает.

KPTI Patche для Linux, как ожидается, приводит к снижению производительности от 5% до 30%.

VM Performance Showing Mixed Impact With Linux 4.15 KPTI Patches

И наконец, Комбинированное воздействие Retpoline + KPTI на Ubuntu Linux


Результат одного из тестов

По информации от Red Hat использование патчей для устранения уязвимостей CVE-2017-5754, CVE-2017-5753 и CVE-2017-5715 в Red Hat Enterprise Linux 7 приводит к замедлению выполнения задач на 1-20%:

  • Наибольшее проседание производительности (8-20%) наблюдается в работе СУБД на нагрузках OLTP, при случайном доступе к прокэшированной памяти, при активном буферизированном вводе/выводе, при большой интенсивности переключения контекста между ядром и пользовательским уровнем (выполнение системных вызовов). Большие потери наблюдаются в тестах tpc, sysbench, pgbench, netperf (до 256 байт) и fio (случайный доступ к памяти NvME).
  • Падение производительности на 3-7% отмечается при выполнении аналитических запросов в СУБД, в системах поддержки принятия решений (DSS) и в Java VM, в моменты интенсивного обмена информацией по сети или при обращениях к диску.
  • Снижение производительности на 2-5% наблюдается в решениях HPC (High Performance Computing) при большой вычислительной нагрузке на CPU, если большинство работ выполняется в пространстве пользователя с применением привязки к ядрам CPU или использованием numa-control (например, тесты Linpack NxN и SPECcpu2006);
  • Минимальное влияние на производительность (менее 2%) проявляется в системах, в которых применяются методы прямого доступа к ресурсам в обход функций ядра и различные техники offload-ускорения. Например, тесты DPDK (VsPERF 64 байт) и OpenOnload (STAC-N).

Больше сведений об обновлениях и тестах производительности, связанных с уязвимостями Meltdown и Spectre можно найти здесь.

+13
~26300

комментарии (42)

+5
CrossWander ,  
В итоге получаем такой вывод — «покупайте новые процессоры, чтобы все работало нормально» (ибо у нас продажи упали видите ли). Исследовались только процессоры 6-8го поколений, а про более старые модели даже не вспомнили, а там то ситуация будет ожидаемо хуже…
+5
Cloud4Y ,   * (был изменён)
Специалист по безопасности и бывший работник Intel, Joe Fitz считает, что на создание процессоров, «новых», в смысле не подверженных этим уязвимостям, уйдет от 4 до 5 лет. Тут его доводы
0
VBKesha ,  
в смысле не подверженных этим уязвимостям, уйдет от 4 до 5 лет.

Будут ли их вообще делать если дыры закрываются софт патчами. А то выпустив новые процы без дыр надо будет убедить производителей софта отключить пачти, тем более через 4-5 лет никто о этой дыре и не вспомнить, патчи у всех уже будут стоять.
0
Marwin ,  

убедят. Это же приличный бонус в виде +хх% производительности из пустого места. Все будут в профите. Это как в поговорке: как сделать хорошо? нужно сделать плохо, а потом вернуть как было ))

0
Elmot ,  
Обновление микрокода — это не софт патч, это скорее хардпатч.
0
FeNUMe ,  
Обновление микрокода к сожалению не закрывает эти уязвимости, потому их закрыли на уровне ОС.
+1
CrossWander ,  
Цикл разработки это долгое дело, я с ним согласен — времени уйдет не мало. Но тут дело в другом — уже сколько поколений процессоров выпустили с теми же самыми уязвимостями, и при этом процессоры выходят каждый год без остановок… Пока не были найдены уязвимости — о них никто и не думал, и процессоры продолжали выпускаться как горячие пирожки. Как же тесты и тому подобное, хотя о чем я говорю, если сейчас лишь бы побыстрее выпустить новый продукт… тренд нынче такой — И так сойдет
image
0
Zhuck ,  

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

0
FJI_JohnSnow ,  
Ну все-таки подобные проколы в ИТ не редкость — сколько дыр живущих много лет находиться постоянно. При этом разработчикам софта закрыть дыру зачастую несоизмеримо легче.
А насчет тестов — ни в коем случае не оправдываю Интел, но это может быть просто «слепая зона» — когда после внедрения функционала были проведены требуемые на тот момент тесты, а дальше все это добро просто переносилось в новые продукты без каких-то серьезных изменений и, соответственно, тестов.
0
Jamdaze ,   * (был изменён)
Примечательно что амд позаботилась об этом заранее и предыдущие 5 лет разрабатывала рязань, хороша ложка к обеду.
0
Ranwise ,  
не факт что у амд не всплывет какой-нибудь баг
0
Methos ,  
5 лет — это быстро

Не успеешь оглянуться — уже прошло 5 лет
0
AlexTest ,  
Интересно, а для эксплуатирования Meltdown на старых INTEL CPU программный код будет отличаться? Т.е. надо ли для каждого отдельного проца писать свой код или он будет одинаковый для всех INTEL CPU?
0
vis_inet ,  
Тестировали, получается, только Core i7?
0
equity ,  
Для linux в статье есть еще E3 и i9, а AMD заявляют, что их процессоры не подвержены meltdown
–1
jedai ,  
интересно, у АМД нет предикшена и кеширования? что-то тут нечисто :)
+1
danfe ,  
На intel'ах проверка прав производится после чтения, а на amd — до. Таким образом, у intel'а получается спекулятивное чтение (прогревающее кэш), а у amd — спекулятивный segmentation fault. (ц)
0
Marwin ,  

не знаю, кто там как тестил… на моей системе с Xeon 2683v3 я ни субъективно, ни по бенчмаркам типо 7zip/cinebench/cpu-z/майнинг монеро падения больше пары процентов (а может это и просто стат погрешность) не заметил. Естественно, верю, есть многочисленные задачи и ситуации, где оно всё плохо. Но на бытовом домашнем уровне я бы не делал из этого трагедии.

0
abyrkov ,  
Простите, но Xeon это домашний процессор?
0
+1 –1
Marwin ,  

На мой взгляд, статистическое большинство домашних пользователей можно условно разделить либо на домохозяек/детей, использующих компьютер только для ВК/ютуба, они разницу не заметят, либо на более менее профессионально работающих за компьютером людей, железо в которых установлено явно "с запасом" под их нужды. Запас немного поубавится, но в целом… опять же не так критично. Единственное, где безвыходная печаль – многочисленные двухядерные ноутбуки. Но на большинстве из них еще и до заплаток последнее время работать всё грустнее. А новые ноуты на квадах опять же не должны сильно страдать.
PS Xeon вполне себе хороший домашний процессор для тех людей, кто любит разбираться технологиях и учитывает соотношения потраченных рублей к единицам производительности при сборке своего компьютера. За остальных бы я особо не переживал, ибо "счастье в неведении"

0
mammuthus ,  

Обычно убавляется не некий виртуальный "запас", а увеличивается вполне конкретное время сборки проекта/рендеринга и т.п.

0
+1 –1
Marwin ,  

Моя идея в том, что мухи должны быть отдельно, а котлеты отдельно. Есть бытовуха, есть работа. Если вы рендерите проект на Висте на core i3 или аналогичной потреб платформе – то вы таки идёте против базовых сценариев, заложенных в это железо. И если вы так делаете – вы и до этих проблем согласились с тем, что ваша платформа делает рендеринг весьма небыстро по сравнению с серверной платформой даже с учётом её возможной бОльшей цены. Поэтому нет оснований жаловаться на то, что ваша нетипичная для потреб платформы задача пострадала. Типичные задачи потреб платформ субъективно страдают незначительно.
В свою очередь, если вы рендерите на профессиональной основе, и вам действительно важно 4 дня будет идти рендер или 5, ибо от этого зависит ваш заработок, то вы однозначно будете сидеть на свежем xeon (а то и не одном), которые, как заявлено, менее страдают от ошибки, на свежей win10 (которая так же по словам MS менее страдает от проблем ввиду переписанного ядра с меньшим количеством связей кернеля и юзерспейса), и вы опять же не так сильно ощутите пагубность ситуации.

0
Vid0 ,  
Вот что получилось у меня. Майнинг на ЦПУ на алгоритмах Argon2d и Yescrypt (cpuminer-opt sse2 v3.7.8):

Windows 10 Version 10.0.10240

Intel i5-6600 Argon2d 0,74 kh/s
Intel i5-6600 Yescrypt 3,35 kh/s

Windows 10 Version 10.0.16299.15 (до KB4056892)

Intel i5-6600 Argon2d 0,70 kh/s
Intel i5-6600 Yescrypt 3,32 kh/s

Windows 10 Version 10.0.16299.192 (после KB4056892)

Intel i5-6600 Argon2d 0,60 kh/s
Intel i5-6600 Yescrypt 3,29 kh/s
0
dmitry_dvm ,  
А проц Core M-5Y71 тоже дырявый? Нигде не нашел.
0
gxcreator ,  
Да, ведь там есть спекулятивное выполнение.
0
Pilat ,  

Мне кажется, что на моём i7-7700 начал активно просыпаться вентилятор. Он был на грани всегда, но теперь постоянно ускоряется. То есть замедления я при сёрфинге не замечаю, а процессор перегревается.

–1
Samouvazhektra ,  

А я со своим i5 походу полный динозавр

0
vis_inet ,  
Ты не одинок! )
0
Lord_Ahriman ,   * (был изменён)
Трехлетний ноутбук на Corei5 4200H Haswell (2.8 номинал, но в системе почему-то всегда на 3.3 ГГц работает) + 6ГБ RAM + Windows 8.1. После установки ежемесячного пакета с этими патчами греться сильнее не стал, с производительностью в играх все ОК, но по ощущениям несколько дольше стали запускаться приложения (вплоть до фризов на 1-2с) и чаще стала просыпаться служба Superfetch. Плюс Firefox Quantum тоже начал чаще «фризиться» на тех сайтах, где раньше все работало хорошо.
+1
UksusoFF ,  

Мне кажется это проблема нового ФФ. Я еще не ставил апдейтов на ОС, но новый фф лагает люто.

0
kalininmr ,  
на 6400 тоже в первую очередь заметил фризы на запуске.
в остальном невооруженным глазом неособо заметно.
0
Goodkat ,  

Интел, как обычно, заботится о пользователях, и хотя баг почти во всех процессорах за последние 20 лет, тесты сделали только для последнего поколения.

+2
danfe ,  
Утащу сюда кусочек с форумов iXBT:
Репутация у Интел была так себе задолго до. Ядерная мина под названием IME, маркетинговые кастрации (вроде отключения виртуализации, вырезания PAE, экономии на текстолите, вот этого всего), нечестная конкуренция и пр. — в итоге лично я зарёкся покупать их продукты ещё в 2012, и до начала 2017 сидел на Феноме2.
Можно добавить ещё чрезмерное (имхо) количество линеек и чехарду с сокетами. AMD, возможно, и проигрывали по производительности и энергопотреблению, но чисто с инженерной точки зрения их подход к разработке и сопровождению своей продукции мне всегда казался более вменяемым.
0
nidalee ,   * (был изменён)
Жаль, была слабая надежда на Cascade Lake-X без уязвимости. Теперь есть над чем подумать.
0
Massacre ,  
Может, конкуренция с AMD их подстегнёт, и выпустят чипы без уязвимости раньше, чем через несколько лет, иначе на волне этого хайпа продажи интела несколько снизятся…
+3
virtualsys ,  
Да, у Интел когда новый процессор на 10% быстрее, то это «революционные технологии», прогресс и ценник вдвое можно поднять и т.д.
А когда после патча медленнее на 10% — «пустяки, дело житейское». ))
0
nivorbud ,  
Офигеть. Смотрю на диаграммы и вижу, что производительность веб-серверов с базами данных просядет на 20-25%, что имхо весьма сильно.

Для обычных пользователей, получается, также всё не сладко.

Он показал, что производительность снижается на величину до 21% для рабочих нагрузок, таких как запуск приложений, запуск файлов, просмотр веб-страниц с несколькими вкладками, многозадачность, копирование файлов, шифрование и сжатие файлов, а также установка фонового приложения.


Это же самые распространенные операции. У меня например постоянно четыре разных браузера открыто и в каждом по нескольку десятков вкладок… Хотя согласен, что рядовой пользователь вряд ли что-то почувствует.

Однако, не думал, что такое сильное проседание на серверах будет, причем на типовых задачах. И это еще с учетом того, что цифры эти исходят от производителя процессоров, для которого понятно и логично выглядит желание сгладить проблему…
0
Habridos ,  
Я так понимаю, что на Windows 7 официально патчей от Microsoft еще нет? Центр обновлений пока молчит.
0
vis_inet ,  
Так и не появилось?
0
Habridos ,  
Нет. Пусто в Центре обновлений. Но у меня проц 4-го поколения Haswell. На них они похоже болт забили. С новейшими поколениями разобраться не могут. Выпускают — отзывают патчи.
0
Einsamen_Wolf ,  
Есть ли тесты древних систем, к примеру на архитектуре Nehalem?
0
ssss41 ,  
Для меня не понятно где есть уязвимости, в каких процессорах. Где-то пишут, начиная с 3-го поколения Core i, а в патчах говорят, для всех процессоров за последние чуть ли не 15 лет. И, «старые» процессоры будут сильно тормозить, что значит старые?
И, если мы возьмем сервер виртуализации, а на сколько я понял топик стартер работает в этой области, то на гостевые машины установка патча никак не повлияет? А вот если ставить на хост, то результат скажется сразу на всех гостевых машинках? Может у вас есть возможность проверить результаты при использовании патча именно в виртуальной среде?