Процессоры стали слишком многоядерными. 64-битная основная сборка ядра Linux Arm по умолчанию не справляется с парой 192-ядерных CPU Ampere

Пока современные x86-совместимые процессоры благодаря AMD добрались до отметки в 128 ядер на один CPU, процессоры на архитектуре Arm уже давно перешагнули эту отметку, и это стало проблемой. Как оказалось, операционная система Linux к такому пока не готова. 

Процессоры стали слишком многоядерными. 64-битная основная сборка ядра Linux Arm по умолчанию не справляется с парой 192-ядерных CPU Ampere
Фото: Ampere 

Вопрос подняла компания Ampere, которая выпустила свои 192-ядерные CPU на Arm. Проблема в том, что два таких процессора в одной системе — это 384 ядра, а на сегодня 64-битная основная сборка ядра Linux Arm поддерживает лишь до 256 ядер. Чтобы решить эту проблему, Ampere сама представила патч, предлагающий увеличить ограничение ядра Linux до 512 ядер с помощью метода «CPUMASK_OFFSTACK». На самом деле нарастить поддержку можно сразу до 8192 ядер, но ограничение в 512 выбрано ради экономии, так как поддержка каждого ядра CPU добавляет около 8 КБ к размеру образа ядра. 

Сообщается, что без патчей поддержка более чем 256 ядер в Linux появится не раньше следующего года, когда выйдет Linux 6.8.  


Источник