Cómo saber cuántos núcleos e hilos tiene el PC

Cuando miramos las características de un procesador es habitual encontrar dos cifras diferentes: núcleos e hilos. Windows puede mostrar, por ejemplo, 6 núcleos y 12 procesadores lógicos, mientras que en Linux el comando nproc devolverá 12. Ningún resultado está mal; están midiendo cosas distintas.

Vamos a comprobar ambos valores en Windows y Linux, sin depender de la ficha comercial del procesador.

Núcleos físicos y procesadores lógicos

Un núcleo físico es una unidad de ejecución dentro del procesador. Los procesadores lógicos son los hilos que el sistema operativo puede utilizar. Tecnologías como SMT de AMD o Hyper-Threading de Intel permiten que un núcleo atienda dos hilos, aunque esto no equivale a tener el doble de núcleos físicos.

Por eso conviene mirar las dos cifras. Para saber cuántas tareas puede repartir el sistema nos interesan los procesadores lógicos; para comparar la estructura real de la CPU, los núcleos físicos.

Ver los núcleos en Windows 10 y Windows 11

El método más sencillo es el Administrador de tareas:

  1. Pulsamos Ctrl + Mayús + Esc.
  2. Entramos en Rendimiento y seleccionamos CPU.
  3. En la zona inferior buscamos Núcleos y Procesadores lógicos.
Núcleos y procesadores lógicos en el Administrador de tareas de Windows
La captura pertenece a una versión anterior de Windows, pero los dos campos siguen dentro de Rendimiento → CPU.

En un ordenador con varios procesadores físicos, Windows suma los núcleos y los hilos de todos ellos. El campo Sockets indica cuántos procesadores físicos hay instalados en la placa.

Comprobarlo con PowerShell

También podemos abrir PowerShell y ejecutar:

Get-CimInstance Win32_Processor | Select-Object Name, NumberOfCores, NumberOfLogicalProcessors

NumberOfCores muestra los núcleos físicos de cada procesador y NumberOfLogicalProcessors, los hilos disponibles. Si el equipo tiene más de un socket, aparecerá una fila por procesador.

Por qué DXDiag puede confundirnos

dxdiag sigue siendo útil para identificar el modelo de CPU, pero el número que presenta entre paréntesis como «CPUs» suele corresponder a procesadores lógicos, no a núcleos físicos. No debemos utilizarlo como única comprobación.

Información del procesador mostrada por DXDiag en Windows
DXDiag identifica el procesador, pero la cifra «CPUs» no debe confundirse con el número de núcleos físicos.

Ver los núcleos y los hilos en Linux

En Ubuntu, Linux Mint, Debian, Fedora y la mayoría de distribuciones tenemos disponible lscpu:

lscpu

Los nombres cambian según el idioma, pero debemos localizar estas líneas:

  • CPU(s): cantidad total de procesadores lógicos.
  • Thread(s) per core: hilos por núcleo.
  • Core(s) per socket: núcleos físicos por procesador.
  • Socket(s): procesadores físicos instalados.

Si tenemos un socket, 6 núcleos por socket y 2 hilos por núcleo, el sistema mostrará 12 CPU lógicas.

Contar únicamente los núcleos físicos

Este comando cuenta las parejas únicas de núcleo y socket:

lscpu -p=CORE,SOCKET | grep -v '^#' | sort -u | wc -l

Es preferible a contar las líneas de /proc/cpuinfo, porque ese archivo contiene una entrada por procesador lógico.

Qué muestra realmente nproc

nproc

nproc indica cuántas unidades de procesamiento tiene disponibles el proceso actual. Normalmente coincide con los hilos del ordenador, pero puede devolver una cifra menor dentro de una máquina virtual, un contenedor o un proceso con la CPU limitada.

Para mostrar todas las unidades instaladas que reconoce el sistema podemos utilizar:

nproc --all
Resultado del comando nproc en una terminal de Linux
En esta captura antigua, nproc devuelve cuatro procesadores lógicos.

Si las cifras no coinciden

Una diferencia entre núcleos e hilos es normal. En cambio, si el sistema muestra menos núcleos de los que anuncia el modelo del procesador, conviene revisar si estamos dentro de una máquina virtual, si existe un límite de CPU o si algún núcleo está desactivado en el firmware.

No hace falta modificar msconfig ni marcar «Número de procesadores» para activar todos los núcleos. Esa opción limita los procesadores utilizados durante el arranque y, por defecto, Windows ya utiliza todos los que tiene disponibles.

Espero que os haya servido para distinguir las dos cifras. Si queréis comparar resultados, indicad el modelo del procesador y lo que muestra vuestro sistema.

Sergio Almela

Senior Software Engineer con más de diez años de experiencia. Escribo sobre Linux, software libre, backend, arquitectura, rendimiento, testing e IA aplicada al desarrollo.

Ver todas las entradas de Sergio Almela →

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *