AMD обнародовала (PDF) информацию об ошибке, которая возникает у серверных процессоров EPYC 7002 Rome — она приводит к зависанию ядра после 1044 дней непрерывной работы. То есть для корректной работы сервер придётся перезагружать каждые 2,93 года. И исправлять эту ошибку в AMD не собираются.
Проблема связана с тем, что ядру не удаётся выйти из энергосберегающего режима CC6 (Core C6 State), который предусматривает понижение напряжения и снижение частоты при бездействии. AMD уточнила, что срок возникновения сбоя может зависеть от модуляции Spread Spectrum и опорной частоты REFCLK, которая помогает чипу отслеживать время.
Правдоподобную гипотезу о причине возникновения ошибки выдвинул пользователь Reddit acid_migrain. По его версии, ошибка в реальности проявляется не через 1044, а через 1042 дня и 12 часов. Timestamp Counter Scaling работает на частоте 2800 МГц. Путём нехитрых вычислений получается, что 2800 × 106 × 1042,5 приблизительно равно 0x3800000000000000 — здесь «слишком много нулей, чтобы это не было совпадением». У проблемы два простых решения: либо перезагружать сервер через каждые 1044 дня (исходя из информации AMD), либо отключить энергосберегающий режим CC6.
Процессоры серии AMD EPYC Rome вышли в 2018 году, и не исключено, что некоторые их владельцы уже сталкивались с этой проблемой. Производитель добавил, что исправлять ошибку не планирует — возможно, это потребовало бы слишком высоких затрат или она затрагивает не столь большое число клиентов.
Источник: