Hay varias formas de obtener información sobre el procesador de tu sistema Linux. Te mostraré mi herramienta favorita para esta tarea junto con algunas otras adicionales realizar esta tarea.
Obtén la información de tu CPU con el comando lscpu
Este es el comando más simple que muestra la información de la CPU en una salida simple y rápida.
Puedes ver la arquitectura de tu sistema, el número de procesadores, la información del proveedor, la información de la caché, la velocidad del procesador, entre otras cosas.
También es muy fácil de recordar porque es similar al comando ls. Puedes pensar en él como «list cpu».
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 39 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Vendor ID: GenuineIntel
Model name: Intel(R) Core(TM) i5-10210U CPU @ 1.60GHz
CPU family: 6
Model: 142
Thread(s) per core: 2
Core(s) per socket: 4
Socket(s): 1
Stepping: 12
CPU max MHz: 4200.0000
CPU min MHz: 400.0000
BogoMIPS: 4199.88
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mc
a cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss
ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art
arch_perfmon pebs bts rep_good nopl xtopology nonstop_
tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cp
l vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1
sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsav
e avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault
epb invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced
tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase t
sc_adjust sgx bmi1 avx2 smep bmi2 erms invpcid mpx rdse
ed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1
xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_
window hwp_epp md_clear flush_l1d arch_capabilities
Virtualization features:
Virtualization: VT-x
Caches (sum of all):
L1d: 128 KiB (4 instances)
L1i: 128 KiB (4 instances)
L2: 1 MiB (4 instances)
L3: 6 MiB (1 instance)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0-7
Vulnerabilities:
Itlb multihit: KVM: Mitigation: VMX disabled
L1tf: Not affected
Mds: Not affected
Meltdown: Not affected
Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl
and seccomp
Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer
sanitization
Spectre v2: Mitigation; Enhanced IBRS, IBPB conditional, RSB fillin
g
Srbds: Mitigation; TSX disabled
Tsx async abort: Not affected
Bueno… esa es la información del procesador de mi sistema y en teoría debería ser algo similar para tu sistema Linux también, sin embargo, lleva en mente que puede existir diferencia de acuerdo con el modelo de tu computador.
Como puedes ver, la información más importante es que mi sistema tiene un procesador Intel(R) Core(TM) i5-10210U. Con esto, yo puedo ir y buscar en la web este número de modelo para obtener más información.
Pero ¿qué significan los demás campos de la salida? ¿Qué información tiene realmente sobre el procesador? Deja que te lo explique. La información es demasiado técnica, por lo que debes tener una comprensión básica de los términos que aparecen ahí.
Explicación de la salida del comando lscpu
La arquitectura de mi sistema es de 64 bits. Lo que significa que es un procesador de 64 bits.
Los op-mods de la CPU son de 32 bits y 64 bits, lo que significa que puede funcionar tanto como un procesador de 32 bits como de 64 bits. En otras palabras, puedes instalar sistemas operativos de 32 y 64 bits en él.
El orden de los bytes es Little Endian. Lo que significa que los bytes están ordenados según el orden Little Endian.
Las siguientes 4 líneas indican el número de procesadores, CPUs/cores e hilos. Te sugiero que leas este artículo para entender un poco sobre los procesadores. Esta imagen de Intel también ayuda a visualizar el significado de socket, CPU, núcleo e hilos.
Tenemos que ir en el orden inverso. Mi sistema tiene 1 socket aquí, lo que significa que tiene un solo chip para las CPUs.
Ese socket tiene 4 núcleos. Significa que el único chip tiene cuatro CPUs físicas en él. Esto te dice el número de núcleos reales, es decir, las CPUs físicas reales.
Y como puedes ver, cada núcleo tiene dos hilos. Los hilos son básicamente CPUs lógicas. Los hilos comparten los recursos de ejecución física del núcleo físico, pero el sistema operativo los ve como núcleos separados. Lee más sobre el hiperhilo aquí.
El número de modelo de la CPU es 142 (no es relevante en mi opinión) y el nombre del modelo es Intel(R) Core(TM) i5-10210U @ 1.60GHz (información más importante).
Stepping es un número utilizado por Intel para identificar el nivel de cambio de diseño de un microprocesador.
La velocidad máxima del reloj es de 4200.0000 y su minima es de 400.0000 MHz.
BogoMIPS es «el número de millones de veces por segundo que un procesador puede hacer absolutamente nada».
Virtualización es VT-x y se utiliza para «ayudar a acelerar las máquinas virtuales creadas en VirtualBox, VMware, Hyper-V y otras aplicaciones».
Las cuatro entradas siguientes se refieren a la caché. Tiene L1D (caché de datos) de 32K, L1I (caché de instrucciones) de 32K, caché L2 de 256K y caché L3 de 3072K. Lee esta página de la wiki para obtener información rápida sobre las cachés de la CPU.
Lo siguiente es el nodo NUMA para cada CPU (tanto las lógicas como las físicas).
La última línea es la lista de banderas de características que son específicas del fabricante. Puedes leer más sobre ellas aquí.
Esta imagen resume la información más importante del procesador que se obtiene del comando lscpu.
En mi opinión, el comando lscpu es más que suficiente para darte toda la información que necesitas.
Otros comandos para comprobar la información de la CPU en Linux
1. Check the content of /proc/cpuinfo
Si conoces la estructura de directorios en Linux, ya sabes que proc es un directorio especial en Linux. En realidad, es un sistema de archivos virtual que contiene información del sistema en tiempo de ejecución, como la memoria del sistema, los dispositivos montados, la configuración del hardware, etc.
Puedes notar que el archivo cpuinfo tiene información detallada sobre cada núcleo del procesador.
Por ejemplo, el primer núcleo de mi CPU tiene la siguiente información:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i5-10210U CPU @ 1.60GHz
stepping : 12
microcode : 0xea
cpu MHz : 2065.893
cache size : 6144 KB
physical id : 0
siblings : 8
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 22
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 art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust sgx bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d arch_capabilities
vmx flags : vnmi preemption_timer invvpid ept_x_only ept_ad ept_1gb flexpriority tsc_offset vtpr mtf vapic ept vpid unrestricted_guest ple pml ept_mode_based_exec
bugs : spectre_v1 spectre_v2 spec_store_bypass swapgs itlb_multihit srbds
bogomips : 4199.88
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
Si sólo quieres el número de núcleos de la CPU (incluyendo los físicos y los lógicos), puedes utilizar el comando grep con el comando wc.
cat /proc/cpuinfo | grep processor | wc -l
8
2. Utiliza el comando lshw
lshw significa ‘listar hardware’, lo que claramente significa listar la información del hardware.
Dado que el comando lshw proporciona información sobre todo el hardware de su sistema, será difícil encontrar exactamente lo que está buscando.
Por ello, el comando lshw ofrece la opción de acotar la búsqueda.
Para mostrar sólo la información del procesador, puede utilizar el comando lshw de la siguiente manera:
sudo lshw -class CPU
Esto mostrará una salida como esta:
*-cpu
description: CPU
product: Intel(R) Core(TM) i5-10210U CPU @ 1.60GHz
vendor: Intel Corp.
physical id: 4
bus info: cpu@0
version: 6.142.12
serial: NULL
slot: CPU0
size: 3158MHz
capacity: 4200MHz
width: 64 bits
clock: 100MHz
capabilities: lm 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 x86-64 constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust sgx bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d arch_capabilities cpufreq
configuration: cores=4 enabledcores=4 microcode=234 threads=8
3. Utilice hwinfo
hwinfo es otra herramienta de línea de comandos para obtener información de hardware de tu sistema Linux.
Probablemente tengas que instalar primero la herramienta hwinfo, lo cual no es nada difícil, en Debian y/o Ubuntu, puedes utilizar el comando apt para instalarla:
sudo apt install hwinfo
Una vez instalado, puedes obtener los detalles de la CPU de esta manera:
hwinfo --cpu
Verás una salida similar a esta para cada núcleo de la CPU:
01: None 00.0: 10103 CPU
[Created at cpu.465]
Unique ID: rdCR.j8NaKXDZtZ6
Hardware Class: cpu
Arch: X86-64
Vendor: "GenuineIntel"
Model: 6.142.12 "Intel(R) Core(TM) i5-10210U CPU @ 1.60GHz"
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,art,arch_perfmon,pebs,bts,rep_good,nopl,xtopology,nonstop_tsc,cpuid,aperfmperf,pni,pclmulqdq,dtes64,monitor,ds_cpl,vmx,est,tm2,ssse3,sdbg,fma,cx16,xtpr,pdcm,pcid,sse4_1,sse4_2,x2apic,movbe,popcnt,tsc_deadline_timer,aes,xsave,avx,f16c,rdrand,lahf_lm,abm,3dnowprefetch,cpuid_fault,epb,invpcid_single,ssbd,ibrs,ibpb,stibp,ibrs_enhanced,tpr_shadow,vnmi,flexpriority,ept,vpid,ept_ad,fsgsbase,tsc_adjust,sgx,bmi1,avx2,smep,bmi2,erms,invpcid,mpx,rdseed,adx,smap,clflushopt,intel_pt,xsaveopt,xsavec,xgetbv1,xsaves,dtherm,ida,arat,pln,pts,hwp,hwp_notify,hwp_act_window,hwp_epp,md_clear,flush_l1d,arch_capabilities
Clock: 1886 MHz
BogoMips: 4199.88
Cache: 6144 kb
Units/Processor: 16
Config Status: cfg=new, avail=yes, need=no, active=unknown
4. Comando dmidecode
dmidecode es otro comando para recuperar varios tipos de información de hardware de su sistema Linux. Puedes comprobar el uso de la memoria en Linux con él. También puedes utilizarlo para obtener sólo la información del procesador.
sudo dmidecode --type processor
Este comando también necesita acceso sudo. Verás una salida como esta:
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.2.0 present.
Handle 0x0004, DMI type 4, 48 bytes
Processor Information
Socket Designation: CPU0
Type: Central Processor
Family: Core i5
Manufacturer: Intel(R) Corporation
ID: EC 06 08 00 FF FB EB BF
Signature: Type 0, Family 6, Model 142, Stepping 12
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)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
PSE-36 (36-bit page size extension)
CLFSH (CLFLUSH instruction supported)
DS (Debug store)
ACPI (ACPI supported)
MMX (MMX technology supported)
FXSR (FXSAVE and FXSTOR instructions supported)
SSE (Streaming SIMD extensions)
SSE2 (Streaming SIMD extensions 2)
SS (Self-snoop)
HTT (Multi-threading)
TM (Thermal monitor supported)
PBE (Pending break enabled)
Version: Intel(R) Core(TM) i5-10210U CPU @ 1.60GHz
Voltage: 0.8 V
External Clock: 100 MHz
Max Speed: 8300 MHz
Current Speed: 2772 MHz
Status: Populated, Enabled
Upgrade: Socket BGA1528
L1 Cache Handle: 0x0005
L2 Cache Handle: 0x0006
L3 Cache Handle: 0x0007
Serial Number: NULL
Asset Tag: NULL
Part Number: NULL
Core Count: 4
Core Enabled: 4
Thread Count: 8
Characteristics:
64-bit capable
Multi-Core
Hardware Thread
Execute Protection
Enhanced Virtualization
Power/Performance Control
Conclusión
Por supuesto, hay muchas más herramientas que le proporcionan información sobre el hardware en Linux. Puedes utilizarlas para obtener información de la CPU también.
En mi opinión, lscpu es el mejor comando si no quieres recordar nada. También puedes confiar en el archivo /proc/cpuinfo. Con estos dos estarás más que listo.
Y ahora, ya que has aprendido a comprobar la información de la CPU, tal vez te gustaría leer sobre la comprobación de la información del disco en Linux también.
Espero que te haya gustado este tutorial. Si tienes preguntas o sugerencias, por favor deja un comentario abajo, nos sería de mucha ayuda.