О стоимости латания дыр

23 январь, 2018 - 13:26Тимур Ягофаров

В корпоративном блоге Intel появилась публикация о первых итогах изучения влияния на производительность систем патчей по устранению уязвимостей «Spectre» и «Meltdown».

Ведет эту тему в блоге Intel Нэвин Шеной, который является исполнительным вице-президентом и генеральным управляющим подразделения Data Center Group в корпорации Intel. Приведу выдержки из его недавнего поста.

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

Работая над этим вопросом, мы установили, что подобное поведение наблюдается и в других продуктах в некоторых конфигурациях, в том числе в платформах на базе процессоров Ivy Bridge, Sandy Bridge, Skylake и Kaby Lake. Нам удалось воспроизвести это поведение в наших тестовых условиях, и мы продолжаем работать над выяснением причин. Одновременно с этим, со следующей недели мы начнем предоставлять производителям бета-версию нашего микрокода для валидации».

Нэвин Шеной сообщил, что результаты были получены с применением стандартных отраслевых тестов: «Мы прекрасно понимаем, что наших заказчиков в первую очередь волнует, как эти обновления скажутся на их собственных рабочих нагрузках. На сегодняшний день мы протестировали серверные двухсокетные платформы на базе процессоров Intel Xeon Scalable (под кодовым названием Skylake), нашей новейшей серверной микроархитектуре».

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

"Подытоживая имеющиеся на сегодня результаты тестов, можно отметить следующее:
•    В стандартных отраслевых тестах для оценки скорости целочисленных вычислений и вычислений с плавающей точкой, в тестах Linpack, STREAM, в тестах исполнения Java приложений на стороне сервера и в тестах энергетической эффективности, влияние обновлений на производительность варьировалось в диапазоне от 0% до 2%. Эти тесты представляют собой рабочие нагрузки общего характера, наиболее интересные для корпоративных заказчиков и пользователей облачных сервисов.
•    В тесте обработки онлайн-транзакций (OLTP), воссоздающем процессы взаимодействия между брокерской фирмой, заказчиком и биржей, после установки обновления было зафиксировано снижение производительности на 4%. В настоящее время проводится дополнительное тестирование производительности на аналитических задачах, и результаты будут зависеть от конфигурации системы, настроек тестов и используемого пакета для тестирования.
•    Тесты в задачах хранения данных тоже свидетельствуют о том, что влияние на производительность зависит от пакета для тестирования, настроек тестов и от конфигурации системы:
o    В тесте FlexibleIO, моделирующем различные типы рабочих нагрузок ввода-вывода, результаты зависят от множества факторов, в том числе от соотношения количества операций чтений/записи, размера блоков, используемых накопителей и степени загрузки процессора. Когда мы проводили тестирование с максимальной загруженностью процессора (100% операций записи), мы увидели снижение пропускной способности на 18%, что обусловлено отсутствием запаса для загрузки процессора. При соотношении числа операций чтения/записи 70/30, снижение производительности составило 2%. В тестах, подразумевающих низкую загруженность процессора (100% операций чтения) – а именно такая модель характерна для задач по организации совместно используемой памяти, мы отметили увеличение загруженности процессора, при этом без какого-либо влияния на показатели производительности.
•    Тесты средств разработки Storage Performance Development Kit (SPDK), которые включают в себя инструменты и библиотеки для создания высокопроизводительных, масштабируемых приложений для систем хранения данных в пользовательском режиме, проводились в нескольких тестовых конфигурациях. В конфигурации SPDK iSCSI влияние обновлений на производительность при работе с одним ядром составило 25%. В конфигурации SPDK vHost мы не заметили снижения производительности".

Более подробно о сути предложенного Intel способа борьбы с уязвимостями «Spectre» и «Meltdown» можно прочитать в свежей публикации Михаила Закусило .