У меня такое чувство, что на моем компьютере не активирована гиперпоточность. Я посмотрел /proc/cpuinfo
и там описывается, что у братьев и сестер есть то же число, что и у процессорных ядер. Это означает, что гиперпоточность не активирована. Как я могу активировать это?
Часть записи /proc/cpuinfo
:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz
stepping : 6
cpu MHz : 2997.000
cache size : 6144 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
источник
Запустите
top
в терминале, нажмите число1
на клавиатуре, чтобы показать нагрузку на процессор в заголовке, сколько процессоров там описано?Если они дублируют реальные ядра в вашем процессоре, то гиперпоточность работает так, как и должна.
источник
Чтобы определить, используете ли вы гиперпоточность (также известную как Intel Hyperthreading Technology), вы можете использовать dmidecode .
В терминале:
Найдите значение состояния Заполнено, Включено (показано ниже между * ... *), т. Е. «Включено» означает, что гиперпоточность активна
В гиперпоточном логическом процессоре вы увидите значение «Состояние не заполнено» (показано ниже между * ... *):
источник
источник
dmidecode | grep -i popula
также печатаетсяStatus: Populated, Enabled
. Смотрите также мой ответ .в результате dmidecode вы можете получить что-то вроде
на серверах с гипер-нитью, установленной на ON
или
на тех, которые установлены на OFF
источник
Thread Count
Не изменится , если гиперпотоковое отключено, например , в системе i7-6600U с технологией HyperThreading инвалидовdmidecode | grep '\(Core\|Thread\).*:'
гравюрCore Count: 2 Core Enabled: 2 Thread Count: 4
.Спойлер: ваш процессор не поддерживает гиперпоточность .
Альтернатива консультирования базы данных поставщика CPU является проверка
/proc/cpuinfo
дляht
флага:Даже если гиперпоточность отключена в BIOS, флаг должен быть включен в этот вывод.
Чтобы проверить, включена ли на самом деле гиперпоточность, вы можете обратиться к другому псевдо-файлу :
Возможные значения:
on|off|forceoff|notsupported|notimplemented
Вы можете включить / отключить гиперпоточность, записав
on
/off
в этот псевдофайл, например:Конечно, это не работает, если
cat
ранее напечатан один изforceoff|notsupported|notimplemented
.Обычно гиперпоточность включена по умолчанию. И если он отключен, это обычно делается в BIOS. Если он отключен в BIOS, этот псевдо-файл, скорее всего, содержит,
forceoff
и вам нужно изменить настройки в BIOS.источник