Я использую Ubuntu 18.04.3 LTS на Supermicro Superserver. На сервере установлены два процессора AMD EPYC 7742. Результаты теста Geekbench 4 показывают 255 потоков вместо ожидаемых 256 потоков. Результаты lscpu, которые прилагаются ниже, также показывают 255 потоков. Другие тесты Geekbench 4, использующие Ubuntu 19.04 с двумя процессорами AMD EPYC 7742, показывают 256 потоков. Есть ли ограничение с 18.04.3, которое ограничивает число потоков до 255?
$ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 256 On-line CPU(s) list: 0-254 Off-line CPU(s) list: 255 Thread(s) per core: 1 Core(s) per socket: 64 Socket(s): 2 NUMA node(s): 2 Vendor ID: AuthenticAMD CPU family: 23 Model: 49 Model name: AMD EPYC 7742 64-Core Processor Stepping: 0 CPU MHz: 1499.869 CPU max MHz: 2250.0000 CPU min MHz: 1500.0000 BogoMIPS: 4499.70 Virtualization: AMD-V L1d cache: 32K L1i cache: 32K L2 cache: 512K L3 cache: 16384K NUMA node0 CPU(s): 0-63,128-191 NUMA node1 CPU(s): 64-127,192-254 Flags: fpu vme de pse tsc msr pae ...
Ну, lscpu
говорит Вам, что cpu 255 офлайн (неактивен):
On-line CPU(s) list: 0-254
Off-line CPU(s) list: 255
Вы могли попытаться возвратить его онлайн
echo 1 > /sys/devices/system/cpu/cpu255/online
После некоторого разъяснения в комментариях очевидно, что, чтобы заставить весь ЦП в последних процессорах AMD EPYC, которые будут работать, Вам нужно более свежее ядро Linux, чем то, которое поставлется с более старыми 18.04 выпусками LTS. Согласно этому обзору минимальное рекомендуемое ядро 4.18. Также удостоверьтесь, что у Вас есть последнее встроенное микропрограммное обеспечение на Вашей материнской плате.
Мне удалось запустить его с включенным X2APIC на ядре 4.15.0-72-generic. Я предполагаю, что поддержка X2APIC была там.
Не было необходимости возиться с IOMMU.