GNU/Linux >> Tutoriales Linux >  >> Linux

5 formas de verificar la información de la CPU en Linux

Hay varias formas de obtener información sobre el procesador en su sistema Linux. Le mostraré mi herramienta favorita para esta tarea junto con algunas formas adicionales de verificar las CPU en Linux.

Obtener información de la 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 concisa.

Puede ver la arquitectura de su sistema, la cantidad de procesadores, la información del proveedor, la información de caché, la velocidad del procesador, etc.

También es más fácil de recordar porque es similar al comando ls. Puede pensar en ello como 'listar cpu'.

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:               142
Model name:          Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz
Stepping:            9
CPU MHz:             900.054
CPU max MHz:         3100.0000
CPU min MHz:         400.0000
BogoMIPS:            5424.00
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 art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq 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 pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust 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 flush_l1d

Bueno... esa es la información del procesador para mi sistema y también debería verse algo similar para su sistema Linux.

Como puede ver, la información más importante es que mi sistema tiene un procesador Intel i5-7200U. Puedo buscar en la web este número de modelo para obtener más información.

Pero, ¿qué significan otros campos en la salida? ¿Qué información tienes realmente sobre el procesador aquí? Déjame explicártelo. La información es demasiado técnica, por lo que debe tener una comprensión básica de los términos aquí.

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 mods de operación de la CPU son de 32 y 64 bits, lo que significa que puede funcionar como un procesador de 32 y 64 bits. En otras palabras, puede instalar sistemas operativos de 32 y 64 bits en él.

El orden de los bytes es Little Endian. Lo que significa que los bytes se organizan según el orden de Little Endian.

Las siguientes 4 líneas le informan sobre la cantidad de procesadores, CPU/núcleos e hilos. Sugeriría leer este artículo para comprender un poco acerca de los procesadores. Esta imagen de Intel también ayuda a visualizar qué significan el zócalo, la CPU, el núcleo y los subprocesos.

Tenemos que ir en el orden inverso aquí. Mi sistema tiene 1 zócalo aquí, lo que significa que tiene un solo chip para las CPU.

Ese zócalo tiene 2 núcleos. Significa que el chip único tiene dos CPU físicas. Esto le indica la cantidad de núcleos reales, es decir, las CPU físicas reales.

Y como puede ver, cada núcleo tiene dos hilos. Los subprocesos son básicamente CPU lógicas. Los subprocesos comparten los recursos de ejecución física del núcleo físico, pero el sistema operativo los ve como núcleos separados. Obtenga más información sobre hiperhilos aquí.

En resumen, mi sistema tiene un chip que contiene dos CPU físicas y cada CPU se divide en dos CPU lógicas. Y, por lo tanto, el sistema operativo considera que mi sistema de doble núcleo tiene 4 CPU.

Hay un nodo NUMA, el proveedor es Intel y la familia de CPU es 6.

El número de modelo de la CPU es 142 (no relevante en mi opinión) y el nombre del modelo es Intel(R) Core(TM) i5-7200U CPU a 2,50 GHz (información más importante).

Stepping es un número utilizado por Intel para identificar en qué nivel de cambio de diseño se construyó un microprocesador.

La velocidad de reloj actual de mi CPU es de 900,054 MHz, mientras que su capacidad máxima es de 3100 MHz y 400 MHz.

BogoMIPS es "la cantidad de millones de veces por segundo que un procesador no puede hacer absolutamente nada".

La 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 siguientes cuatro entradas son sobre caché. Tiene L1D (caché de datos) de 32K, L1I (caché de instrucciones) de 32K, caché L2 de 256K y caché L3 de 3072K. Lea esta página wiki para obtener información rápida sobre las memorias caché de la CPU.

El siguiente es el nodo NUMA para cada CPU (tanto CPU lógicas como físicas).

La última línea es la lista de indicadores de características que son específicos del fabricante. Puede leer más sobre ellos aquí.

Esta imagen resume la información más importante del procesador que obtiene del comando lscpu.

En mi opinión, el comando lscpu es más que suficiente para brindarle toda la información que necesita.

Otros comandos para comprobar la información de la CPU en Linux

Hay otras formas de obtener información de la CPU en la línea de comandos de Linux. Déjame mostrarlos uno por uno. Sin embargo, no entraré en detalles para explicar su producción.

1. Verifique el contenido de /proc/cpuinfo

Si conoce la estructura de directorios en Linux, ya sabe 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.

Si desea información sobre la CPU, puede leer el contenido del archivo cpuinfo en el directorio proc.

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-7200U CPU @ 2.50GHz
 stepping    : 9
 microcode    : 0x8e
 cpu MHz        : 800.026
 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    : 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 tsc_known_freq 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 pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust 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 flush_l1d
 bugs        : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf
 bogomips    : 5424.00
 clflush size    : 64
 cache_alignment    : 64
 address sizes    : 39 bits physical, 48 bits virtual
 power management:

Si solo desea la cantidad de núcleos de CPU (incluidos los físicos y lógicos), puede usar el comando grep con el comando wc.

cat /proc/cpuinfo | grep processor | wc -l

4

2. Usa el comando lshw

lshw significa 'lista de hardware'. Obviamente, significa enumerar 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.

Esta es la razón por la que el comando lshw ofrece la opción de reducir la búsqueda deseada.

Para mostrar solo la información del procesador, puede usar 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-7200U CPU @ 2.50GHz
        vendor: Intel Corp.
        physical id: 3f
        bus info: [email protected]
        version: Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz
        serial: To Be Filled By O.E.M.
        slot: U3E1
        size: 2964MHz
        capacity: 3100MHz
        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 art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq 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 pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust 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 flush_l1d cpufreq
        configuration: cores=2 enabledcores=2 threads=4

3. Usar hwinfo

hwinfo es otra herramienta de línea de comandos para obtener información de hardware de su sistema Linux.

Probablemente tengas que instalar primero la herramienta hwinfo. En Debian y Ubuntu, puede usar el comando apt para instalarlo.

sudo apt install hwinfo

Una vez instalado, puede obtener los detalles de la CPU de esta manera:

hwinfo --cpu

Verá un resultado similar a este para cada núcleo de la 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.142.9 "Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz"
   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,tsc_known_freq,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,pti,ssbd,ibrs,ibpb,stibp,tpr_shadow,vnmi,flexpriority,ept,vpid,fsgsbase,tsc_adjust,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,flush_l1d
   Clock: 3050 MHz
   BogoMips: 5424.00
   Cache: 3072 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. Puede verificar el uso de memoria en Linux con él. También puede usarlo para obtener solo la información del procesador.

sudo dmidecode --type processor

Este comando también necesita acceso sudo. Verá una salida como esta:

dmidecode 3.1
 Getting SMBIOS data from sysfs.
 SMBIOS 3.0.0 present.
 Handle 0x003F, DMI type 4, 48 bytes
 Processor Information
     Socket Designation: U3E1
     Type: Central Processor
     Family: Core i5
     Manufacturer: Intel(R) Corporation
     ID: E9 06 08 00 FF FB EB BF
     Signature: Type 0, Family 6, Model 142, Stepping 9
     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-7200U CPU @ 2.50GHz
     Voltage: 0.8 V
     External Clock: 100 MHz
     Max Speed: 2500 MHz
     Current Speed: 2400 MHz
     Status: Populated, Enabled
     Upgrade: Other
     L1 Cache Handle: 0x003C
     L2 Cache Handle: 0x003D
     L3 Cache Handle: 0x003E
     Serial Number: To Be Filled By O.E.M.
     Asset Tag: To Be Filled By O.E.M.
     Part Number: To Be Filled By O.E.M.
     Core Count: 2
     Core Enabled: 2
     Thread Count: 4
     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 brindan información de hardware en Linux. También puede utilizarlos para obtener información de la CPU.

En mi opinión, lscpu es el mejor comando si no quieres recordar nada. También puede confiar en el archivo /proc/cpuinfo. Solo usa estos dos y estarás listo.

Ya que aprendió a verificar la información de la CPU, tal vez también le gustaría leer acerca de cómo verificar la información del disco en Linux.

Espero que les haya gustado este tutorial. Si tiene preguntas o sugerencias, deje un comentario a continuación.


Linux
  1. Cómo verificar la versión del sistema operativo y Linux

  2. Cómo comprobar si un sistema Linux es de 32 o 64 bits

  3. Cómo comprobar el tiempo de actividad del sistema en Linux

  4. Cómo verificar la versión del Kernel en Linux

  5. Comprobar la carga del sistema en Linux

Cómo crear una carga de CPU del 100 % en un sistema Linux

Cómo mostrar la información de la CPU de Linux usando CPUFetch

Cómo verificar/reparar el sistema de archivos de Linux en el arranque

3 formas de comprobar la versión del kernel de Linux en la línea de comandos

Cómo verificar la carga de su servidor en el sistema Linux

Cómo verificar el uso o la utilización de la CPU de Linux