Búsqueda de sitios web

9 comandos útiles para obtener información de la CPU en Linux


En un artículo anterior, reunimos una lista de 10 comandos útiles para recopilar información del sistema y del hardware en Linux. En esta guía, nos limitaremos a la CPU/procesador y le mostraremos varias formas de extraer información detallada sobre la CPU de su máquina.

Solo para brindarle una descripción general, consultaremos información como la arquitectura de la CPU, el ID del proveedor, el modelo, el nombre del modelo, la cantidad de núcleos de la CPU, la velocidad de cada núcleo y mucho más.
Esencialmente, /proc/cpuinfo contiene toda esta información, todos los demás comandos/utilidades obtienen su salida de este archivo.

Dicho esto, a continuación se muestran 9 comandos para obtener información sobre su CPU Linux.

1. Obtenga información de la CPU usando el comando cat

Simplemente puede ver la información de la CPU de su sistema viendo el contenido del archivo /proc/cpuinfo con la ayuda del comando cat de la siguiente manera:

cat /proc/cpuinfo
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 69
model name	: Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz
stepping	: 1
microcode	: 0x1c
cpu MHz		: 1700.062
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
bugs		:
bogomips	: 4788.92
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:
......

Para ser un poco más específico, puede emplear el comando grep, una herramienta CLI para buscar datos de texto sin formato para líneas que coincidan con una expresión regular. Esto puede ayudarle a generar solo el nombre del proveedor, el nombre del modelo, la cantidad de procesadores, la cantidad de núcleos, etc.:

cat /proc/cpuinfo | grep 'vendor' | uniq		#view vendor name
cat /proc/cpuinfo | grep 'model name' | uniq		#display model name
cat /proc/cpuinfo | grep processor | wc -l		#count the number of processing units
cat /proc/cpuinfo | grep 'core id'			#show individual cores	

Lectura sugerida: Cómo utilizar los comandos 'cat' y 'tac' con ejemplos en Linux

2. Comando lscpu: muestra información de arquitectura de la CPU

El comando lscpu imprime información de la arquitectura de la CPU desde sysfs y /proc/cpuinfo como se muestra a continuación:

lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    2
Core(s) per socket:    2
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 69
Model name:            Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz
Stepping:              1
CPU MHz:               1303.687
CPU max MHz:           2700.0000
CPU min MHz:           800.0000
BogoMIPS:              4788.92
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              3072K
NUMA node0 CPU(s):     0-3
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts

3. Comando cpuid: muestra la CPU x86

El comando cpuid descarga información completa sobre las CPU recopiladas a partir de la instrucción CPUID y también descubre el modelo exacto de las CPU x86 a partir de esa información.

Asegúrese de instalarlo antes de ejecutarlo.

sudo apt install cpuid        #Debian/Ubuntu systems
sudo yum install cpuid	#RHEL/CentOS systems 
sudo dnf install cpuid	#Fedora 22+ 

Una vez instalado, ejecute cpuid para recopilar información sobre la CPU x86.

cpuid
CPU 0:
   vendor_id = "GenuineIntel"
   version information (1/eax):
      processor type  = primary processor (0)
      family          = Intel Pentium Pro/II/III/Celeron/Core/Core 2/Atom, AMD Athlon/Duron, Cyrix M2, VIA C3 (6)
      model           = 0x5 (5)
      stepping id     = 0x1 (1)
      extended family = 0x0 (0)
      extended model  = 0x4 (4)
      (simple synth)  = Intel Mobile Core i3-4000Y / Mobile Core i5-4000Y / Mobile Core i7-4000Y / Mobile Pentium 3500U/3600U/3500Y / Mobile Celeron 2900U (Mobile U/Y) (Haswell), 22nm
   miscellaneous (1/ebx):
      process local APIC physical ID = 0x0 (0)
      cpu count                      = 0x10 (16)
      CLFLUSH line size              = 0x8 (8)
      brand index                    = 0x0 (0)
   brand id = 0x00 (0): unknown
   feature information (1/edx):
      x87 FPU on chip                        = true
      virtual-8086 mode enhancement          = true
      debugging extensions                   = true
      page size extensions                   = true
      time stamp counter                     = true
      RDMSR and WRMSR support                = true
      physical address extensions            = true
....

4. Comando dmidecode: muestra información del hardware de Linux

dmidecode es una herramienta para recuperar información de hardware de cualquier sistema Linux. Vuelca el contenido de la tabla DMI (también conocida como SMBIOS) de una computadora en un formato legible por humanos para una fácil recuperación. La especificación SMBIOS define varios tipos de DMI; para CPU, utilice "procesador" de la siguiente manera:

sudo dmidecode --type processor
dmidecode 3.0
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.

Handle 0x0004, DMI type 4, 42 bytes
Processor Information
	Socket Designation: U3E1
	Type: Central Processor
	Family: Core i5
	Manufacturer: Intel(R) Corporation
	ID: 51 06 04 00 FF FB EB BF
	Signature: Type 0, Family 6, Model 69, Stepping 1
	Flags:
		FPU (Floating-point unit on-chip)
		VME (Virtual mode extension)
		DE (Debugging extension)
		PSE (Page size extension)
		TSC (Time stamp counter)
		MSR (Model specific registers)
		PAE (Physical address extension)
		MCE (Machine check exception)
		CX8 (CMPXCHG8 instruction supported)
		APIC (On-chip APIC hardware supported)
		SEP (Fast system call)
		MTRR (Memory type range registers)
		PGE (Page global enable)
		MCA (Machine check architecture)
.....

5. Herramienta Inxi: muestra información del sistema Linux

Inxi es un potente script de información del sistema de línea de comandos destinado tanto a la consola como a IRC (Internet Relay Chat). Puede usarlo para recuperar instantáneamente información de hardware.

Puedes instalar así:

sudo apt install inxi 	#Debian/Ubuntu systems
sudo yum install inxi		#RHEL/CentOS systems 
sudo dnf install inxi		#Fedora 22+ 

Para mostrar información completa de la CPU, incluida la velocidad del reloj de la CPU y la velocidad máxima de la CPU (si está disponible), use el indicador -C de la siguiente manera:

inxi -C
CPU:       Dual core Intel Core i5-4210U (-HT-MCP-) cache: 3072 KB 
           clock speeds: max: 2700 MHz 1: 1958 MHz 2: 1993 MHz 3: 1775 MHz 4: 1714 MHz

6. Herramienta lshw: listar la configuración del hardware

lshw es una herramienta mínima para recopilar información detallada sobre la configuración del hardware de una computadora. Puede utilizar la opción -C para seleccionar la clase de hardware, CPU en este caso:

sudo lshw -C CPU
*-cpu                   
       description: CPU
       product: Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz
       vendor: Intel Corp.
       physical id: 4
       bus info: cpu@0
       version: Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz
       serial: To Be Filled By O.E.M.
       slot: U3E1
       size: 2626MHz
       capacity: 2700MHz
       width: 64 bits
       clock: 100MHz
       capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts cpufreq
       configuration: cores=2 enabledcores=2 threads=4

7. hardinfo: muestra información del hardware en la ventana GTK+

hardinfo muestra información del hardware en una ventana GTK+, puedes instalarlo de la siguiente manera:

sudo apt install hardinfo 	#Debian/Ubuntu systems
sudo yum install hardinfo	#RHEL/CentOS systems 
sudo dnf install hardinfo	#Fedora 22+ 

Una vez que lo tengas instalado, escribe:

hardinfo 

También le permite generar un informe de información del hardware del sistema haciendo clic en el botón "Generar informe". Desde la siguiente interfaz, haga clic en "Generar" para continuar. Tenga en cuenta que puede elegir la categoría de información de hardware que se generará.

Una vez que haya generado el informe en formato html, podrá verlo desde un navegador web como se muestra a continuación.

8. hwinfo: muestra información del hardware actual

hwinfo se utiliza para extraer información sobre el hardware presente en un sistema Linux. Para mostrar información sobre su CPU, use --cpu

hwinfo --cpu
01: None 00.0: 10103 CPU                                        
  [Created at cpu.460]
  Unique ID: rdCR.j8NaKXDZtZ6
  Hardware Class: cpu
  Arch: X86-64
  Vendor: "GenuineIntel"
  Model: 6.69.1 "Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz"
  Features: fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,ht,tm,pbe,syscall,nx,pdpe1gb,rdtscp,lm,constant_tsc,arch_perfmon,pebs,bts,rep_good,nopl,xtopology,nonstop_tsc,aperfmperf,eagerfpu,pni,pclmulqdq,dtes64,monitor,ds_cpl,vmx,est,tm2,ssse3,sdbg,fma,cx16,xtpr,pdcm,pcid,sse4_1,sse4_2,movbe,popcnt,tsc_deadline_timer,aes,xsave,avx,f16c,rdrand,lahf_lm,abm,epb,tpr_shadow,vnmi,flexpriority,ept,vpid,fsgsbase,tsc_adjust,bmi1,avx2,smep,bmi2,erms,invpcid,xsaveopt,dtherm,ida,arat,pln,pts
  Clock: 2080 MHz
  BogoMips: 4788.92
  Cache: 3072 kb
  Units/Processor: 16
  Config Status: cfg=new, avail=yes, need=no, active=unknown
....

9. nproc – Imprimir número de unidades de procesamiento

El comando nproc se utiliza para mostrar el número de unidades de procesamiento presentes en su computadora:

nproc

Para obtener información y opciones de uso adicionales, lea las páginas de manual de estos comandos como esta:

man commandname

Además, consulte:

  1. Cpustat: monitorea la utilización de la CPU mediante procesos en ejecución en Linux
  2. CoreFreq: una poderosa herramienta de monitoreo de CPU para sistemas Linux
  3. Encuentre los principales procesos en ejecución según el mayor uso de memoria y CPU en Linux
  4. Cómo imponer una alta carga de CPU y pruebas de estrés en Linux usando la herramienta 'Stress-ng'

¡Eso es todo por ahora! Puede compartir con nosotros formas adicionales de extraer información de la CPU en Linux a través del formulario de comentarios a continuación.