В течение апреля и мая Intel обновила документацию на свои актуальные модели процессоров, и в ней появилось описание доселе неизвестной ошибки, которая нашлась у всех представителей семейств Skylake и Kaby Lake. Все процессоры этих поколений, ориентированные на десктопные компьютеры, на платформу HEDT, мобильные и встраиваемые применения, а также серверные процессоры Xeon v5 и v6, оказались подвержены проблеме, проявляющейся в «опасном и непредсказуемом поведении в случае включённой технологии Hyper-Threading». Такое описание этой ошибке дали разработчики операционной системы Debian, которым удалось выявить условия, когда баг проявляется на практике.

В разосланном пользователям предупреждении разработчики призывают владельцев компьютеров на базе процессоров с микроархитектурой Skylake и Kaby Lake немедленно отключить Hyper-Threading в BIOS или UEFI, поскольку в противном случае их могут подстерегать «нарушения в ожидаемом поведении приложений и операционной системы, искажение данных и даже их потеря». В сообщении об ошибке при этом подчёркивается, что проблема касается не только Debian или Linux, а может проявляться в любых операционных системах, включая и Microsoft Windows.
В документации Intel ошибка описана следующим образом: «в сложных микроархитектурных состояниях короткие циклы из менее чем 64 инструкций, использующих одновременно процессорные регистры AH, BH, CH или DH вместе с соответствующими им широкими регистрами (например, RAX, EAX или AX для AH), могут вызывать непредсказуемое поведение процессора. Такая аномалия наблюдается только если активны оба логических процессора одного физического процессора».

Хотя и кажется, что описанные условия не должны возникать слишком часто, в Debian-сообществе нашлись и реальные пострадавшие. Например, первым ещё в начале этого года проблему заметил один из авторов инструментария OCaml, столкнувшийся со странным поведением компилятора. Однако разобраться и локализовать ошибку удалось лишь к концу мая, когда её описание появилось в интеловской документации.
То, что Intel признал существование проблемы, означает, что в скором времени она должна быть устранена через обновления микрокода. Сейчас сообщения о наличии бага есть в документации на все процессоры Core шестого поколения (Skylake), Core седьмого поколения (Kaby Lake), Xeon v5, Xeon v6, а также в документации на новые процессоры Core X шестого поколения. Микрокод с коррекцией ошибки на данный момент выпущен Intel лишь для процессоров Skylake, он имеет номер версий 0xB9, 0xBA или более поздний. Кроме того, в новых процессорах Kaby Lake-X ошибка исправлена изначально в степпинге ядра B0. Для остальных пострадавших CPU исправление пока только ожидается. Конечные пользователи получат необходимую заплатку через обновления BIOS материнских плат.
Напомним, что обнаруженная ошибка – далеко не первая неприятность такого характера, поразившая микроархитектуру Skylake. В начале прошлого года в ней была выявлена ещё одна критичная для конечных пользователей проблема, из-за которой фиксировались зависания и сбои процессора под высокой нагрузкой. Тогда она также была оперативно исправлена через обновления микрокода.
Rocket Lab открыла четвёртый космодром на Аляске для расширения сети запусков
Раскрыты характеристики глобальной версии Redmi Note 17 Pro Max: батарея 9210 мА·ч, зарядка 100 Вт, защита IP69K и чип Snapdragon 6 Gen 5
Запущен первый спутниковый флот для обнаружения лесных пожаров на ранней стадии
Россия открывает доступ к квантовому процессору SnowDrop 8Q на 8 кубитов
Смартфон Samsung Galaxy A37 перевели на квартальные обновления спустя всего четыре месяца после релиза
Выручка Azure от Microsoft впервые превысила $100 млрд за год вопреки рекордным инвестициям в ИИ
Первый взгляд на Redmi K100 Pro с батареей на 8500 мАч, зарядкой 100 Вт и камерой 200 Мп в «айфоновом» цвете
В продаже появился 400-литровый холодильник Xiaomi Mijia: тонкий, недорогой и с защитой от бактерий 99,99%