До 42 раз более длительное время работы может быть вызвано ошибкой программирования, которая временно присутствовала в драйвере amdgpu. И разработчики Ubuntu перенесли её в следующий выпуск своего ядра Linux (7.0.0-28.28), как они сообщают в посте на форуме (открывается в новом окне). Затронуты некоторые приложения, использующие среду программирования AMD Rocm (g+) для вычислений на GPU или для ИИ.
Как сообщает портал Phoronix (открывается в новом окне), базовая ошибка уже исправлена. Как следует из журнала коммитов (открывается в новом окне) разработчика ядра Грега Кроа-Хартмана, изменение в управлении гетерогенной памятью в драйвере amdgpu привело к длительным, бессмысленным циклам ожидания. Проблема возникла в ядре 7.0.12 (открывается в новом окне) и была исправлена уже следующим минорным релизом 7.0.13.
Для разработчиков Ubuntu это было просто неудачное время. Однако, как говорится в сообщении на форуме, для них выпуск важных обновлений безопасности имел приоритет. Игры не должны быть затронуты этой ошибкой программирования или, по крайней мере, затронуты в меньшей степени; также влияние на приложения Rocm может варьироваться.
В случае сомнений временно используйте более старое ядро
Для пользователей Ubuntu, использующих Rocm для вычислений или ИИ, есть относительно простой обходной путь: просто продолжайте использовать старое ядро. Обычно дистрибутивы Linux сохраняют как минимум одну более старую версию ядра, которую можно выбрать через загрузчик.
Со следующим опубликованным ядром команда Ubuntu планирует устранить проблему. Затронуты пользователи Ubuntu 26.04, а также стека Hardware Enablement (HWE) для Ubuntu 24.04, который также мигрирует на ядро 7.0.