Насколько медленнее будет ваша система после патчей для 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 можно найти здесь.

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

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

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

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

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

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

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

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

                      • 0
                        Простите, но Xeon это домашний процессор?
                        • 0

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

                          • 0

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

                            • 0

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

                        • 0
                          Вот что получилось у меня. Майнинг на ЦПУ на алгоритмах 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
                          А проц Core M-5Y71 тоже дырявый? Нигде не нашел.
                          • 0
                            Да, ведь там есть спекулятивное выполнение.
                          • 0

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

                            • –1

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

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

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

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

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

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

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

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


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

                                          Однако, не думал, что такое сильное проседание на серверах будет, причем на типовых задачах. И это еще с учетом того, что цифры эти исходят от производителя процессоров, для которого понятно и логично выглядит желание сгладить проблему…

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

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

                                                Самое читаемое