Hyper threading es una tecnología en CPUs multicore que sirve para mejorar el rendimiento de los procesos que se ejecutan en el sistema utilizando diferentes hilos en la misma CPU física. Permite ejecutar más de un hilo por CPU.
Dependiendo del modelo de CPU, podremos ejecutar más o menos threads. Por ejemplo, una CPU física que tenga dos cores, podrá ejecutar dos threads al mismo tiempo.
¿Cómo sabemos si tenemos activado el Hyper Threading?
El Hyper Threading es una característica que hay que activar desde la BIOS pero para entrar, hay que reiniciar el sistema y eso es algo que no siempre podemos hacer cuando queramos.
Con comandos de Linux también podemos saber si está activo el Hyper Threading sin necesidad de rebotar el sistema. Hay varios métodos para ello:
- Con el comando lscpu:
[root@server1 ~]# lscpu |grep -i thread
Thread(s) per core: 2
[root@server1 ~]#
- Con el comando dmidecode:
[root@server1 ~]# dmidecode -t processor | grep Count
Core Count: 4
Thread Count: 8
Core Count: 4
Thread Count: 8
[root@server1 ~]#
- Revisando el archivo /sys/devices/system/cpu/smt/active:
[root@server1 ~]# cat /sys/devices/system/cpu/smt/active
1
[root@server1 ~]#
¿Cómo contar el número de Threads que está utilizando un proceso de Linux?
Una vez que tenemos el Hyperthreading activado, podemos comprobar si los procesos están utilizando multithreading, si están programados para ello.
En Linux, encontraremos esta información en /proc/PID/status:
[root@server1 ~]# cat /proc/13248/status |grep -i thread
Threads: 3
[root@server1~]#
Mi pasión por la tecnología me lleva constantemente a explorar las últimas tendencias y aplicaciones, buscando siempre formas de implementar soluciones innovadoras que mejoren la eficiencia. En puerto53.com comparto contenido valioso para ayudar a otros profesionales y entusiastas de la informática a navegar y dominar el complejo mundo de la tecnología. Mi especialidad en Linux RedHat.
Más sobre mí en el este enlace,