Saber la cantidad de CPU es importante, por ejemplo, para optimizar tus servidores de bases datos ya que algunas opciones de configuración depende del número de CPU, hoy te presentamos 5 herramientas que te permite obtener el número de CPU, estás herramientas son CLI, lo que además te permite usarlas shell script u otro lenguaje de programación, algunas de ellas proveen información adicional cómo la cantidad de hilos por núcleo y la cantidad de núcleo por sockets, mientras que otras solo imprimen el número de CPU lógicos.
1. lscpu
lscpu recopila información de la arquitectura de la CPU a partir de sysfs, /proc/cpuinfo y cualquier biblioteca específica de la arquitectura aplicable (por ejemplo, librtas en Powerpc). La información incluye, por ejemplo, la cantidad de CPU, subprocesos, núcleos, sockets y nodos de acceso a memoria no uniforme (NUMA). También hay información sobre las memorias caché de la CPU y el uso compartido de la memoria caché, la familia, el modelo, bogoMIPS, el orden de bytes y la ejecución por pasos.
En entornos virtualizados, la información de la arquitectura de la CPU que se muestra refleja la configuración del sistema operativo invitado, que normalmente es diferente del sistema físico (host). En arquitecturas que admiten la recuperación de información de topología física, lscpu también muestra la cantidad de sockets físicos, chips y núcleos en el sistema host.
$ lscpu | egrep '^(CPU\(s\):|Thread|Core)'
CPU(s): 32
Thread(s) per core: 2
Core(s) per socket: 24
2. dmidecode
dmidecode es una herramienta para volcar el contenido de la tabla DMI (Desktop Management Interface) de una computadora en un formato legible. Esta tabla contiene una descripción de los componentes de hardware del sistema, así como otros datos útiles como números de serie y revisión de BIOS. Gracias a esta tabla, puede recuperar esta información sin tener que buscar el hardware real aunque no garantiza que la información sea 100% confiable.
$ sudo dmidecode |egrep "Socket Designation: Proc|((Thread|Core) Count)"
Core Count: 24
Thread Count: 32
3. nproc
Imprime los CPUs disponibles.
$ nproc --all
32
4. /proc/cpuinfo
Este archivo virtual identifica y nos provee información detallada de los CPUs.
$ grep -c ^processor /proc/cpuinfo
5. getconf
getconf – Encuesta la variables de configuración del sistema
$ getconf _NPROCESSORS_ONLN