Z arkusza danych procesora Intel Core, tom 1 , strona 38:
Technologia Hyper-Threading firmy Intel
[...] Ta funkcja musi być włączona w systemie BIOS i wymaga obsługi systemu operacyjnego.
To dlatego hyperthreading jest rzeczywista sprzętu fizycznego na matrycy procesora, a tym samym mogą być włączone / wyłączone na poziomie sprzętowym tylko .
Jeśli wiesz, która aplikacja nie działa dobrze z hiperwątkiem, możesz użyć narzędzia takiego jak StartAffinity, jeśli masz XP.
Jeśli używasz systemu Windows 7, istnieje wbudowane start
polecenie, które może to zrobić. Użyj następującego polecenia, aby uruchomić proces z określonym powinowactwem do procesora (ponownie /AFFINITY
argument został dodany tylko w systemie Windows 7):
start /AFFINITY <mask> "C:\yourprogram.exe"
Gdzie <mask>
należy zastąpić maską szesnastkową dla procesorów, które chcesz uruchomić (maska procesora jest tylko maską binarną włączającą / wyłączającą to powinowactwo, więc 00000101 włącza CPU0 i CPU2, a 00000010 tylko CPU1).
Aby obliczyć wartość szesnastkową, możesz albo przekonwertować maskę binarną, albo wziąć sumę 2 do mocy rdzeni, na których chcesz uruchomić program (od 0), i przekonwertować tę wartość na szesnastkową.
Na przykład, jeśli mam system czterordzeniowy i chcę, aby proces był wykonywany tylko na CPU0 i CPU2, dodałbym 2 0 + 2 2 = 1 + 4 = 5. Konwertuj 5 na hex, który jest tylko 5, i ustaw to jako swoje <mask>
. Możesz również po prostu przekonwertować 00000101 na heksadecymalny. Jeśli nie wiesz, jak przekonwertować te zasady, możesz po prostu skorzystać z tej tabeli konwersji .