З таблиці даних процесора Intel Core, Том 1 , стор. 38:
Технологія Intel Hyper-Threading
[...] Ця функція повинна бути включена за допомогою BIOS і вимагає підтримки операційної системи.
Це відбувається тому , що гіперпотоковой є актуальною фізичному пристрою на кристалі процесора, і , таким чином , може бути включений / виключений на апаратному рівні тільки .
Якщо ви знаєте, який додаток не працює добре з гіперточенням, ви можете використовувати такий інструмент, як StartAffinity, якщо у вас є XP.
Якщо ви використовуєте Windows 7, є вбудована start
команда, яка може це зробити. Використовуйте наступну команду для запуску процесу з певною спорідненістю процесора (знову ж /AFFINITY
аргумент додано лише в Windows 7):
start /AFFINITY <mask> "C:\yourprogram.exe"
Де <mask>
слід замінити шістнадцяткову маску для процесорів, які ви хочете запустити (маска процесора - це лише бінарна маска, яка дозволяє / вимикає цю спорідненість, тому 00000101 дозволяє CPU0 та CPU2, а 00000010 дозволяє лише CPU1).
Щоб обчислити шістнадцяткове значення, можна або перетворити двійкову маску, або взяти суму 2 до потужності ядер, на яких потрібно запустити програму (починаючи з 0), і перетворити це значення в шістнадцяткове.
Наприклад, якщо у мене є чотирьохядерна система, і я хочу лише, щоб процес виконувався на CPU0 та CPU2, я додав би 2 0 + 2 2 = 1 + 4 = 5. Перетворити 5 в шістнадцяткову, що становить лише 5, і встановити це як своє <mask>
. Ви також можете просто перетворити 00000101 в шістнадцятковий. Якщо ви не знаєте, як перетворити ці бази, ви можете просто скористатися цією таблицею перетворення .