Не успели ещё отгреметь последствия обнаружения уязвимостей Meltdown и Spectre, как источники сообщают, что в CPU Intel обнаружили восемь новых уязвимостей, четыре из которых являются критическими.
Более того, источники утверждает, что эти четыре уязвимости гораздо более серьёзны, чем те же Spectre. Пока им не присвоили собственное имя, источник предлагает называть их Spectre NG (NextGen). Четыре уязвимости этого класса выделяются тем, что могут «выходить за пределы» виртуальных машин.
Проблема Meltdown в том, что без обновления процессора он нормально не исправляется. А ненормальное исправление вызывает ощутимое снижение производительности в некоторых важных сценариях работы. А так в любом процессоре постоянно находят уязвимости и фиксят их микрокодом из года в год. Поэтому тут вопрос не в том, что там за уязвимости, а в том, как их исправить.
Здравствуйте, Lazytech, Вы писали:
L>Более того, источники утверждает, что эти четыре уязвимости гораздо более серьёзны, чем те же Spectre. Пока им не присвоили собственное имя, источник предлагает называть их Spectre NG (NextGen). Четыре уязвимости этого класса выделяются тем, что могут «выходить за пределы» виртуальных машин.[/q] L>Это просто праздник какой-то!
Давно уже пора закопать стюардессу и начать разрабатывать что-то, не отягощенное грузом совместимости за полвека.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[2]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, CoderMonkey, Вы писали:
CM>Давно уже пора закопать стюардессу и начать разрабатывать что-то, не отягощенное грузом совместимости за полвека.
Попробую угадать: Байкал, Эльбрус или Loongson?
Re[3]: В процессорах Intel найдено ещё 8 уязвимостей
Первоисточник: de | en. Просьба добавить ссылку в первое сообщение. А лучше заменить.
L>четыре из которых являются критическими
В оригинале (английском) "high risk", слово "critical" там встречается 0 раз.
Странно, что CVE номера присвоили, но не сообщают. Их-то какой смысл скрывать?
Re[2]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, CoderMonkey, Вы писали:
CM>Давно уже пора закопать стюардессу и начать разрабатывать что-то, не отягощенное грузом совместимости за полвека.
Spectre не связан с грузом совместимости за полвека
Re[3]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, CoderMonkey, Вы писали:
Pzz>>Spectre не связан с грузом совместимости за полвека
CM>Сама необходимость в OOE — это как раз следствие костыльно-подпорочной архитектуры.
Это следствие того, что 1) память сильно медленнее процессора 2) компиляторы не умеют распараллеливать вычисления на много ALU
Re[5]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, Pzz, Вы писали:
Pzz> компиляторы не умеют распараллеливать вычисления на много ALU
Вот именно. Попытка выжать последние крохи из старого говнокода, вместо того чтобы думать, что делать дальше. Хотя, с другой стороны, при теперешней архитектуре процессора особо и не распараллелишь — чем больше ядер, тем больше накладные расходы на синхронизацию.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[6]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, CoderMonkey, Вы писали:
Pzz>> компиляторы не умеют распараллеливать вычисления на много ALU
CM>Вот именно. Попытка выжать последние крохи из старого говнокода, вместо того чтобы думать, что делать дальше. Хотя, с другой стороны, при теперешней архитектуре процессора особо и не распараллелишь — чем больше ядер, тем больше накладные расходы на синхронизацию.
Память очень медленная. Чтобы из нее выжать хоть что-то, приходится агрессивно кешировать и работать с ней блоками, причем не связанными с логической структурой программы. Что добавляет изрядно недетерминизма. Компилятору трудно планировать параллелизм, если он даже близко не знает, сколько времени займет та или иная операция с памятью. А вот у прпцессора, хоть ума и немного, но зато он видит всю картину в деталях.
И это касается всех современных процессоров, не только x86
Re[7]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, Pzz, Вы писали:
Pzz>Память очень медленная. Чтобы из нее выжать хоть что-то, приходится агрессивно кешировать и работать с ней блоками, причем не связанными с логической структурой программы. Что добавляет изрядно недетерминизма. Компилятору трудно планировать параллелизм, если он даже близко не знает, сколько времени займет та или иная операция с памятью.
Из-за изначально ущербной идеи сделать кэш полностью прозрачным и недоступным для управления прогой. А сделали его таким, опять же, чтобы не надо было переделывать старый говнокод.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[8]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, CoderMonkey, Вы писали:
CM>Из-за изначально ущербной идеи сделать кэш полностью прозрачным и недоступным для управления прогой. А сделали его таким, опять же, чтобы не надо было переделывать старый говнокод.
Ну понимаешь, если ты каждую загрузку/выгрузку между кэшом и памятью будешь явно программировать, боюсь, количество исполненных процессорных команд, смысл которых в управлении кешом, будет сравнимо с количеством команд, которые что-то полезное делают. Что само по себе не ускорит выполнение программы.
Re[9]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, Pzz, Вы писали:
Pzz>Ну понимаешь, если ты каждую загрузку/выгрузку между кэшом и памятью будешь явно программировать, боюсь, количество исполненных процессорных команд, смысл которых в управлении кешом, будет сравнимо с количеством команд, которые что-то полезное делают. Что само по себе не ускорит выполнение программы.
Зачем каждую? Блоками, естественно.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[2]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, vsb, Вы писали:
vsb>Проблема Meltdown в том, что без обновления процессора он нормально не исправляется.
Meltdown — это обычный баг, он исправляется в железе без проблем.
А вот Spectre останется надолго, его простым железным фиксом не исправить.
Sapienti sat!
Re[2]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, CoderMonkey, Вы писали:
CM>Давно уже пора закопать стюардессу и начать разрабатывать что-то, не отягощенное грузом совместимости за полвека.
Все современные быстрые ARM'ы так же подвержены Spectre, а некоторые умудрились и аналог Meltdown словить.
Sapienti sat!
Re[6]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, CoderMonkey, Вы писали:
Pzz>> компиляторы не умеют распараллеливать вычисления на много ALU CM>Вот именно. Попытка выжать последние крохи из старого говнокода, вместо того чтобы думать, что делать дальше. Хотя, с другой стороны, при теперешней архитектуре процессора особо и не распараллелишь — чем больше ядер, тем больше накладные расходы на синхронизацию.
Можно пример нового супер-пупер кода, который работает на in-order железе и сравним по производительности с OoO исполнением?
Sapienti sat!
Re[8]: В процессорах Intel найдено ещё 8 уязвимостей
Покажи, пожалуйста, новый супер-пупер-код, который бы полностью позволял обойтись без out-of-order исполнения с использованием этих инструкций.
В теории, есть альтернативные модели процессоров, самая интересная из известных мне альтернатив — это https://en.wikipedia.org/wiki/Mill_architecture (я у них инвестор). Но похоже, что на практике получается не лучше существующих OoO процессоров, хотя и с немного меньшей аппаратной сложностью.
Sapienti sat!
Re[9]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, Cyberax, Вы писали:
C>Покажи, пожалуйста, новый супер-пупер-код, который бы полностью позволял обойтись без out-of-order исполнения с использованием этих инструкций.
Вот так взять и за 5 минут, ты это серьезно?
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[10]: В процессорах Intel найдено ещё 8 уязвимостей
Здравствуйте, CoderMonkey, Вы писали:
C>>Покажи, пожалуйста, новый супер-пупер-код, который бы полностью позволял обойтись без out-of-order исполнения с использованием этих инструкций. CM>Вот так взять и за 5 минут, ты это серьезно?
Ну так взять и назвать говнокодерами всех программистов компиляторов и дизайнеров CPU — это работа на 5 минут же. Значит несложно и показать альтернативу за сравнимое время.
На практике, многие думали о том, как ускорить CPU, но лучше OoO никто ничего не придумал пока. VLIW'ы разных мастей с трудом удерживаются даже в массивно-параллельных GPU, а в мире CPU выжили только во встраиваемых устройствах.