De la hoja de datos del procesador Intel Core, volumen 1 , página 38:
Tecnología Intel Hyper-Threading
[...] Esta característica debe habilitarse usando el BIOS y requiere soporte del sistema operativo.
Esto se debe a hyperthreading es hardware físico real en el dado de la CPU, y por lo tanto se puede activar / desactivar en un nivel de hardware única .
Si sabe qué aplicación no funciona bien con hyperthreading, puede usar una herramienta como StartAffinity si tiene XP.
Si usa Windows 7, hay un start
comando integrado que puede hacer esto. Use el siguiente comando para iniciar un proceso con una afinidad de procesador particular (nuevamente, el /AFFINITY
argumento solo se agregó en Windows 7):
start /AFFINITY <mask> "C:\yourprogram.exe"
Donde <mask>
debe reemplazarse con la máscara hexadecimal para los procesadores que desea ejecutar (la máscara del procesador es solo una máscara binaria que habilita / deshabilita esa afinidad, por lo que 00000101 habilita CPU0 y CPU2, y 00000010 habilita solo CPU1).
Para calcular el valor hexadecimal, puede convertir la máscara binaria o tomar la suma de 2 a la potencia de los núcleos en los que desea ejecutar el programa (a partir de 0), y convertir ese valor a hexadecimal.
Por ejemplo, si tengo un sistema de cuatro núcleos y solo quiero que el proceso se ejecute en CPU0 y CPU2, agregaría 2 0 + 2 2 = 1 + 4 = 5. Convertir 5 a hexadecimal, que es solo 5, y establece eso como tu <mask>
. También podría convertir 00000101 a hexadecimal también. Si no sabe cómo convertir estas bases, puede usar esta tabla de conversión .