Ricerca nel sito web

9 comandi utili per ottenere informazioni sulla CPU su Linux


In un articolo precedente, abbiamo messo insieme un elenco di 10 comandi utili per raccogliere informazioni sul sistema e sull'hardware in Linux. In questa guida restringeremo il campo alla CPU/processore e ti mostreremo vari modi per estrarre informazioni dettagliate sulla CPU della tua macchina.

Giusto per darti una panoramica, chiederemo informazioni quali architettura della CPU, Vendor_ID, modello, nome del modello, numero di core della CPU, velocità di ciascun core e molto altro ancora.
Essenzialmente, /proc/cpuinfo contiene tutte queste informazioni, ogni altro comando/utilità ottiene il proprio output da questo file.

Detto questo, di seguito sono riportati 9 comandi per ottenere informazioni sulla tua CPU Linux.

1. Ottieni informazioni sulla CPU utilizzando il comando cat

Puoi semplicemente visualizzare le informazioni sulla CPU del tuo sistema visualizzando il contenuto del file /proc/cpuinfo con l'aiuto del comando cat come segue:

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:
......

Per essere un po' più specifici, puoi utilizzare il comando grep, uno strumento CLI per cercare nei dati di testo semplice le righe che corrispondono a un'espressione regolare. Questo può aiutarti a visualizzare solo il nome del fornitore, il nome del modello, il numero di processori, il numero di core, ecc.:

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	

Lettura consigliata: Come utilizzare i comandi "cat" e "tac" con esempi in Linux

2. Comando lscpu: mostra le informazioni sull'architettura della CPU

Il comando lscpu stampa le informazioni sull'architettura della CPU da sysfs e /proc/cpuinfo come mostrato di seguito:

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: mostra la CPU x86

Il comando cpuid scarica le informazioni complete sulle CPU raccolte dall'istruzione CPUID e scopre anche il modello esatto delle CPU x86 da tali informazioni.

Assicurati di installarlo prima di eseguirlo.

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

Una volta installato, esegui cpuid per raccogliere informazioni relative alla 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: mostra le informazioni sull'hardware Linux

dmidecode è uno strumento per recuperare informazioni sull'hardware di qualsiasi sistema Linux. Scarica il contenuto della tabella DMI (nota anche come SMBIOS) di un computer in un formato leggibile dall'uomo per un facile recupero. La specifica SMBIOS definisce vari tipi DMI, per la CPU, utilizzare il "processore" come segue:

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. Strumento Inxi: mostra le informazioni sul sistema Linux

Inxi è un potente script di informazioni di sistema da riga di comando destinato sia alla console che all'IRC (Internet Relay Chat). Puoi usarlo per recuperare istantaneamente le informazioni sull'hardware.

Puoi installare in questo modo:

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

Per visualizzare le informazioni complete sulla CPU, inclusa la velocità di clock della CPU e la velocità massima della CPU (se disponibile), utilizzare il flag -C come segue:

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. Strumento lshw: elenca la configurazione hardware

lshw è uno strumento minimale per raccogliere informazioni approfondite sulla configurazione hardware di un computer. Puoi utilizzare l'opzione -C per selezionare la classe hardware, CPU in questo 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 – Mostra le informazioni sull'hardware nella finestra GTK+

hardinfo mostra le informazioni sull'hardware in una finestra GTK+, puoi installarlo come segue:

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

Una volta installato, digita:

hardinfo 

Consente inoltre di generare un rapporto sulle informazioni sull'hardware del sistema facendo clic sul pulsante "Genera rapporto". Dall'interfaccia sottostante, fai clic su "Genera" per procedere. Tieni presente che puoi scegliere la categoria di informazioni hardware da generare.

Una volta generato il report in formato html, è possibile visualizzarlo da un browser web come mostrato di seguito.

8. hwinfo – Mostra le informazioni sull'hardware presente

hwinfo viene utilizzato per estrarre informazioni sull'hardware presente in un sistema Linux. Per visualizzare informazioni sulla tua CPU, utilizza --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 – Stampa il numero di unità di elaborazione

Il comando nproc viene utilizzato per mostrare il numero di unità di elaborazione presenti sul tuo computer:

nproc

Per ulteriori informazioni e opzioni sull'utilizzo, leggere le pagine man di questi comandi in questo modo:

man commandname

Inoltre, controlla:

  1. Cpustat: monitora l'utilizzo della CPU eseguendo processi in Linux
  2. CoreFreq: un potente strumento di monitoraggio della CPU per sistemi Linux
  3. Trova i principali processi in esecuzione in base al maggiore utilizzo di memoria e CPU in Linux
  4. Come imporre un carico elevato della CPU e uno stress test su Linux utilizzando lo strumento "Stress-ng".

Per ora è tutto! Puoi condividere con noi ulteriori modi per estrarre le informazioni sulla CPU in Linux tramite il modulo di feedback sottostante.