Отключить Hyperthreading в реестре Windows 7

некоторые bios не имеют возможность отключить Hyperthreading процессора, это есть способ отключить его в реестре Windows 7? Или инструмент или программное обеспечение?

Я знаю о вкладке загрузки msconfig (дополнительные параметры) и отключении процессоров там, не уверен, отключает ли он полные ядра или гиперпространства или как сказать.

32bit или 64bit Windows 7

изменить:

давайте предположим, что это двухъядерный или более с hyperthreading.

в Диспетчер устройств он показывает 4 процессора на процессоре Intel i5, и вы не можете отключить их либо, Данг.

5
задан ᔕᖺᘎᕊ
17.03.2023 17:43 Количество просмотров материала 3346
Распечатать страницу

3 ответа

С Intel Core Processor Техническое Описание, Том 1, стр. 38:

Технологии Многопоточности

[...] Эта функция должна быть включена с помощью BIOS и требует поддержка системы.

это потому, что hyperthreading фактическое физическое оборудование на процессоре умереть, и, таким образом, может быть включен/выключен на аппаратном уровне только.

если вы знаете, какое приложение плохо работает с hyperthreading, вы можете использовать такой инструмент, как StartAffinity если у вас XP.

если вы используете Windows 7, есть встроенный start команда, которая сможет это сделать. Используйте следующую команду для запуска процесса с определенным сходством процессора (опять же,/AFFINITY аргумент был добавлен только в Windows 7):

start /AFFINITY <mask> "C:\yourprogram.exe" 

здесь <mask> должен быть заменен на шестнадцатеричную маску для процессоров, которые вы хотите запустить (маска процессора - это просто двоичная маска, включающая / отключающая это сродство, поэтому 00000101 включает CPU0 и CPU2, а 00000010-только CPU1).

чтобы вычислить шестнадцатеричное значение, вы можете преобразовать двоичную маску,или возьмите сумму 2 к мощности ядер, на которых вы хотите запустить программу (начиная с 0), и преобразуйте это значение в шестнадцатеричное.

например, если у меня есть четырехъядерная система, и я хочу, чтобы процесс выполнялся только на CPU0 и CPU2, Я бы добавил 20 + 22 = 1 + 4 = 5. Преобразуйте 5 в hex, что составляет всего 5, и установите это как ваш <mask>. Вы также можете просто преобразовать 00000101 в hex. Если вы не знаете, как конвертировать эти базы, вы можете просто использовать эта таблица преобразования.

3
отвечен Breakthrough 2023-03-19 01:31

отключение Hyper-threading является делом только BIOS.

Я предполагаю, что вы хотели бы отключить Hyper-Threading, потому что у вас есть приложение, которое не оптимизировано для этой функции и может снизить производительность?

Если смотреть на нумерацию CPU, физические ядра нечетные - поэтому в двухъядерной системе HT ядра 1 и 3 будут" настоящими " CPU. Если вы выберете 2 ядра в msconfig, процессоры 1 и 2 будут включены, так что у вас будет физический и Logical (HT) CPU active - это не принесет вам пользы, если у вас возникли проблемы с программным обеспечением, которое имеет проблемы с HT.

2
отвечен Dustin G. 2023-03-19 03:48

в Windows, Самый простой способ, чтобы изменить сродство explorer.exe, так как каждый процесс, запущенный из этого унаследует маску сходства. Это все еще далеко не идеально, но, по крайней мере, вы делаете это только один раз за сеанс.

0
отвечен E. Attia 2023-03-19 06:05

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх