hoe Processor en CPU Details te controleren op Linux – commando voorbeelden
Processor / Cpu details
de details over de processor waar we het over zullen hebben omvatten, aantal cores, beschikbaarheid van hyper threading, architectuur, cache grootte etc.
het vinden van deze details over de cpu op uw systeem kan een beetje moeilijk zijn omdat de manier waarop verschillende commando ‘ s ze controleren.
de commando ‘ s die we gaan gebruiken zijn lscpu, /proc/cpuinfo en lstopo (hwloc).,
deze commando ‘ s tonen gedetailleerde informatie over de cpu cores/verwerkingseenheden.
de volgende voorbeelden zullen uitleggen hoe de uitvoer van deze commando ‘ s moet worden geïnterpreteerd.
1. Leverancier en model van de processor
om de naam van de leverancier en het model van de processor te vinden, doorzoek je het bestand /proc/cpuinfo met het grep Commando.
$ cat /proc/cpuinfo | grep vendor | uniqvendor_id : GenuineIntel
Het is een Intel processor. Zoek vervolgens de modelnaam die gebruikt kan worden om de exacte specificaties online op te zoeken op de website van Intel.
$ cat /proc/cpuinfo | grep "model name" | uniqmodel name : Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz
Het is een” Core 2 Quad Q8400 ” processor.
2., Architectuur
De lscpu-opdrachten rapporteren de architectuur.
$ lscpuArchitecture: x86_64CPU op-mode(s): 32-bit, 64-bitByte Order: Little Endian.....
de architectuur is x86_64 wat 64 bit is.
3. Frequentie
De frequentie/snelheid van de processor wordt gerapporteerd door zowel lscpu als /proc/cpuinfo.
$ lscpu | grep -i mhzCPU MHz: 1998.000
$ cat /proc/cpuinfo | grep -i mhz | uniqcpu MHz : 1998.000
The frequency reported might be lower than the actual frequency specified for the processor because most modern processors operate at lower frequencies to save power. Under load condition they would switch to higher frequency.
de verandering van frequentie kan worden gezien door de uitvoer van /proc/cpuinfo te monitoren met behulp van watch.,
$ watch -n 0.1 "cat /proc/cpuinfo | grep -i mhz"
voer het bovenstaande commando uit in een terminal en terwijl het draait, Start een cpu-intensieve taak parallel en de frequentie zou toenemen.
Every 0.1s: cat /proc/cpuinfo | grep -i mhz Sun Jun 29 15:28:38 2014cpu MHz : 2664.000cpu MHz : 2664.000cpu MHz : 2664.000cpu MHz : 2664.000
4. Aantal cores
elke core op de processor is een werkelijke onafhankelijke cpu of verwerkingseenheid. Meerdere cores stellen de processor in staat om meerdere programma-instructies parallel uit te voeren, waardoor de verwerkingssnelheid wordt verhoogd.
het lscpu commando geeft de “cores per socket” aan.
dus in dit geval is het aantal kernen op de processor 4.,
het bestand / proc / cpuinfo geeft ook het aantal cores aan, maar het kan een beetje lastig en verwarrend zijn.
het tellen van het aantal processors kan verkeerde nummers geven.
$ cat /proc/cpuinfo | grep "processor"
bij hyper-Threaded processors is het aantal processors dat het besturingssysteem ziet tweemaal het aantal cores.
echter/proc / cpuinfo heeft een veld met de naam “core id” dat een unieke id is voor elke core in een enkele processor., Het tellen van de core id zou een duidelijke indicatie geven van het aantal werkelijke cores op de processor
$ cat /proc/cpuinfo | grep -i "core id"core id : 0core id : 2core id : 1core id : 3
meerdere processors
zeldzaam, maar in het geval u op een systeem zit dat meerdere fysieke processors heeft (ja, het betekent 2 of meer processors op het moederbord), dan zouden de resultaten van /proc/cpuinfo anders zijn. In het geval van meerdere processors, zou de “fysieke id” meerdere waarden aangeven.
$ cat /proc/cpuinfo | grep -i "physical id" | uniqphysical id : 0
als er meer dan 1 fysieke ID ‘ s zijn, dan zijn er meerdere fysieke processors op het systeem., En je moet de kernen op elke processor afzonderlijk tellen.
5. Hyper threading
Hyper threading is een Intel-technologie die het mogelijk maakt individuele cores uit te voeren als 2 logische verwerkingseenheden. Dit verhoogt in zekere zin de verwerkingskracht van elke kern op een beperkte manier.
om te controleren of de processor hyper-threading heeft, moeten 2 verschillende waarden worden vergeleken. Ten eerste is het aantal werkelijke kernen, en ten tweede is het aantal logische verwerkingseenheden.
als het aantal kernen gelijk is aan het aantal verwerkingseenheden Zoals Gezien door het besturingssysteem, dan geen hyper threading., Anders als het aantal verwerkingseenheden groter is / tweemaal het aantal kernen, dan ja hyper threading.
number of processing units = number of cores number of processing units = number of cores * 2
neem dit voorbeeld van een Core 2 Quad Q8400 processor
aantal processors zoals aangegeven door /proc/cpuinfo is 4
$ cat /proc/cpuinfo | grep processorprocessor : 0processor : 1processor : 2processor : 3
aantal “cpu cores” = 4 en “siblings” = 4 en unieke “core id” = 4
daarom totaal aantal van verwerkingseenheden = aantal werkelijke kernen. Dus er is geen hyper threading op deze processor, en hetzelfde kan worden bevestigd door de specificaties van de processor op de website van Intel.,
Hyper-threaded processor
indien hyper threading aanwezig is, zou de uitvoer van/proc / cpuinfo of lscpu anders zijn.
noteer de “Thread (s) per core: 2” die aangeven dat er 2 threads per core zijn, met in totaal 4 cores. Dus het aantal verwerkingseenheden gezien door het besturingssysteem is 8.
laten we nu eens kijken naar de uitvoer van/proc / cpuinfo.
de “cpu cores” = 4 en siblings = 8 wat betekent dat er 4 cores en 2 hyperthreads per core zijn. Het aantal processors zoals aangegeven door / proc / cpuinfo zou ook 8 zijn.,
The HTT flag in dmidecode output and ht flag in /proc/cpuinfo flags might not correctly report hyper threading.
voor de Core2Quad Q8400-processor, zowel dmidecode als /proc/cpuinfo tonen de hyperthreading-vlag ingeschakeld, hoewel hyper-threading niet beschikbaar is op de processor.
Hwloc / lstopo
Hwloc (Portable hardware locality) is een klein hulpprogramma dat de structuur van de processor rapporteert in een netjes visueel diagram. Het diagram toont het aantal kernen, hyperthreads en cachegrootte. Een enkel diagram vertelt alles.,575b2e2d”>
Het bovenstaande diagram laat duidelijk zien –
Totaal L2 – Cache- 4096 MB – 4MB
Totaal Kernen – 4
Processing unit per kern – 1
Hyper-threaded processor
Voor een hyperthreaded processor, de hwloc output schema kan er als volgt uitzien
Het diagram geeft
Totaal L3-Cache – 8 MB
Totaal Kernen – 4
Processing units per Core – 2
Conclusie
om meer Te leren over de commando ‘ s voor het controleren van de CPU informatie over Linux check deze post:
9 Commando ‘ s om te Controleren CPU Informatie over Linux