Видеопамять мешает спать: серверы с AMD Instinct не могут уйти в гибернацию из-за объёма VRAM
Инженер AMD Sameul Zhang сообщил об ошибке в Linux, мешающей гибернации серверов с видеокартами AMD Instinct. Проблема возникает на мощных AI-системах, оснащённых несколькими ускорителями с большим объёмом видеопамяти — вплоть до 1.5 ТБ VRAM на сервер.
Видеокарты Instinct используют до 192 ГБ VRAM каждая, и Linux должен выгрузить всю эту память в ОЗУ перед записью сна. Алгоритм гибернации сначала перемещает видеопамять в RAM через GTT или shmem, после чего создаёт дубликат всех данных для записи на диск. Это означает, что при 1.5 ТБ VRAM общая нагрузка на память удваивается — до 3 ТБ.
Большинство серверов с Instinct имеют лишь 2 ТБ RAM, и Linux не справляется с таким объёмом при переходе в спящий режим. В результате система не может завершить гибернацию, и процесс аварийно прерывается.
Чтобы решить проблему, AMD предложила два патча: первый снижает объём RAM, необходимый на этапе сна, но замедляет «оттаивание» (восстановление после сна) — до 60 минут. Второе изменение — третий патч — позволяет пропускать восстановление видеобуферов при выходе из сна, значительно ускоряя процесс.
Хотя AI-серверы обычно работают круглосуточно, в некоторых случаях гибернация может быть необходима — например, для снижения энергопотребления. Это особенно актуально в периоды перегрузки сетей и попыток балансировки нагрузки, как это происходило недавно в Испании.