Проверить поддержку Hyper-Threading в Linux

Allsoft

Hyper-Threading - это технология одновременной многопоточности (SMT) Intel. При включенной Hyper-Threading каждое физическое ядро представлено как два "логических процессора", каждый из которых может выполнять задания одновременно, разделяя ресурсы физического ядра.

Определить включен ли Hyper-threading в виртуальной машине не представляется возможным, так как гипервизор передает потоки как реальный ядра.

Есть несколько способов:

lscpu

Команда lscpu показывает информацию о процессоре и архитектуре системы. В частности нас интересует параметр "Thread(s) per core". Если указана 1, то для каждого ядра доступен лишь один поток и Hyper-Threading, если указана 2, то Hyper-Threading включен.

lscpu

Для проверки статуса можно использовать следующую команду

lscpu | grep Thread

или пример с AWK

lscpu | grep Thread |awk '{if ($4==2) print "Hyper-threading enabled"; else print "Hyper-threading disabled"; }'

/sys/devices/system/cpu/smt/active

Так же возможно узнать статус Hyper-Threading обратившись к /sys/devices/system/cpu/smt/active

cat /sys/devices/system/cpu/smt/active

Значение:
0 - Hyper-Threading отключен
1 - Hyper-Threading включен

dmidecode

Проверить статус Hyper-Threading так же можно с помощью утилиты dmidecode

dmidecode -t processor | grep Count

Необходимо сравнить два параметра Core Count и Thread Count, если количество потоков (Thread Count) в два раза больше количества ядер (Core Count), то Hyper-Threading включен.

Добавить комментарий