Intel визнала, що технологія Hyper-Threading у її останніх чіпах покоління Skylake та Kaby Lake могла призводити до збоїв у роботі ПК. Про цю помилку в «залізі» компанія повідомила в опублікованій документації на ці процесори. Помилка стосується чіпів Skylake і Kaby Lake, які використовуються в ноутбуках, високопродуктивних домашніх ПК сегмента HEDT, звичайних ПК, вбудованих та серверних рішеннях.
Hyper-threading (гіперпотічність, HTT) – технологія Intel, яка з’явилася на початку 2000-х років для процесорів Pentium 4 та інших. Після активації HTT операційна система починає «бачити» одне реальне фізичне ядро процесора як два окремих процесори. Завдяки цьому при певних типах навантаження процесор стає продуктивнішим, оскільки використовується на 100%.
Одними з перших баг у Hyper-threading відтворили розробники операційної системи Debian. Як описують фахівці, проблема проявляє себе в «небезпечному і непередбаченому поводженні ПК у разі включеної технології Hyper-Threading».
У розісланому користувачам попередженні розробники закликають власників комп’ютерів на базі процесорів з мікроархітектурою Skylake і Kaby Lake негайно відключити Hyper-Threading в BIOS або UEFI. Інакше можна отримати непередбачувану поведінку додатків та ОС або втратити дані. У повідомленні про помилку при цьому підкреслюється, що проблема стосується не тільки Debian або Linux, а може проявлятися в будь-яких операційних системах, з Microsoft Windows включно.
У документації Intel помилку описують дещо складніше. У ній йдеться, що у складних мікроархітектурних станах короткі цикли з менш ніж 64 інструкцій, які використовують одночасно процесорні регістри AH, BH, CH або DH разом з широкими регістрами RAX, EAX, можуть викликати непередбачувану поведінку процесора. Така аномалія спостерігається, тільки якщо активні обидва логічних процесори одного фізичного процесора.
Фахівці відзначають, що в реальності умови для виникнення збою з вини Hyper-threading виникають не часто. Однак у Debian-співтоваристві знайшлися і реальні постраждалі. Наприклад, першим ще на початку цього року проблему помітив один з авторів інструментарію OCaml, який зіткнувся з дивною поведінкою компілятора. Однак розібратися і локалізувати помилку вдалося лише до кінця травня, коли її опис з’явився в документації Intel.
Усунути проблему можна єдиним способом – оновленням мікрокоду свого ПК, тобто «прошивкою BIOS/UEFI». Таку прошивку повинен випустити виробник самого ПК. Окрім цього, мікрокод з корекцією помилки Intel поки що випустила лише для процесорів Skylake. Також у нових процесорах Kaby Lake-X помилка виправлена для чіпів зі степінгом B0.