LINUX.ORG.RU
ФорумTalks

Есть что на тему оптимизации недавних патчей к CPU?

 ,


0

3

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

Между тем, например, для meltdown нужно вызвать исключение обращением к недоступному адресу. Значит напрашивается, что можно было бы чистить кэш не всякий раз при переключении, а только после исключений. Тогда урон производительности был бы, наверное малозаметный, хотя некоторый оверхед пришелся был на усложнение алгоритма переключения.

Что там, идут среди разработчиков обсуждения в этом или другом направлении? Просто до сих пор мало интересовался их кухней и найти среди горы тредов сходу не смог.

P.S. А есть точный список процессоров, для которых Intel уже выпустила обновления микрокода?

★★★★★

Последнее исправление: praseodim (всего исправлений: 2)
Ответ на: комментарий от praseodim

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

P.S. Посмотрел бенчмарки, в куче тестов разница с/без патча как статистическая погрешность, или как заметили в комментах на phoronix, выглядит как незначительный регрес после очередного релиза ядра. Выдыхаем, учитывая что уязвим даже coffee-lake патчи не выкинут лет пять точно, так что пока пользователи intel в безопасности.

Aber ★★★★★
()
Ответ на: комментарий от Aber

Как я понял, эксплоиты для spectre действительно не требуют вызова исключений (вернее оно незаметно происходит при спекулятивном исполнении). А вот meltdown вроде все же требует. Если конечно, все правильно понял, в чем уже сомневаюсь.

praseodim ★★★★★
() автор топика
Ответ на: комментарий от Aber

потому результаты выполнения отбрасываются и ошибки не приходит.

ну да, попробуй почитать адреса из кернела и посмотри, как тебе ошибка не придёт.

Посмотрел бенчмарки, в куче тестов разница с/без патча как статистическая погрешность

лично провела бенчмарки. на i-7 по отдельным показателям, в том числе самым важным вроде IO, производительность просела более чем в 2 раза. для эксперимента можно попробовать архивировать кучу мелких файлов, например. теперь это нереально долго.

Iron_Bug ★★★★★
()
Ответ на: комментарий от Iron_Bug

ну да, попробуй почитать адреса из кернела и посмотри, как тебе ошибка не придёт.

Как я понял не придет, потому что инструкция не выполнится, мы прекратим исполнение (флагом/условным переходом), но спекулятивное исполнение произойдет, т.е. значение из запрещенной области памяти послужит в качестве сдвига при обращении к элементу нашего массива и этот элемент из оперативной памяти попадет в кеш процессора, а дальше случайном порядке обращаемся ко всем элементам нашего массива замеряя время доступа, индекс того элемента который быстрее всего извлечется будет значением в запретной области. Это то как я понял. Может я и ошибся, лень перечитывать :)

Aber ★★★★★
()
Последнее исправление: Aber (всего исправлений: 2)
Ответ на: комментарий от Aber

а дальше случайном порядке обращаемся ко всем элементам нашего массива замиряя время доступа

Я наверное отстал от жизни. А как собственно замерять время доступа?

Serg_HIS
()
Ответ на: комментарий от Serg_HIS

Нет, вроде точным таймером, про firefox тут должно было быть написано, у меня что-то не открывается, только через гугл кеш. Короче сейчас performance.now() огрубляют, думаю теперь игрушки в webgl могут пострадать.

Aber ★★★★★
()
Ответ на: комментарий от Serg_HIS

Я боюсь выступить в качестве испорченного телефона, все свои знания по теме meltdown я получил из этой статьи. Может я чего понял неправильно.

Aber ★★★★★
()
Последнее исправление: Aber (всего исправлений: 1)
Ответ на: комментарий от Iron_Bug

лично провела бенчмарки. на i-7 по отдельным показателям, в том числе самым важным вроде IO, производительность просела более чем в 2 раза. для эксперимента можно попробовать архивировать кучу мелких файлов, например. теперь это нереально долго.

Интересно, как с этим дела на вин-серверах? Именно серверах, а не десктопных виндах.

praseodim ★★★★★
() автор топика
Ответ на: комментарий от praseodim

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

Iron_Bug ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.