Bashプログラミング
 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング

マスター Linux:詳細な CPU 情報を取得するための 9 つの必須コマンド

前回の記事では、Linux でシステムおよびハードウェアの情報を収集するための 10 個の便利なコマンドのリストをまとめました。このガイドでは、CPU/プロセッサーに絞り込み、マシンの CPU に関する詳細情報を抽出するさまざまな方法を示します。

概要を説明すると、CPU アーキテクチャ、vendor_id、モデル、モデル名、CPU コアの数、各コアの速度などの情報をクエリします。
基本的に、/proc/cpuinfo このすべての情報が含まれており、他のすべてのコマンド/ユーティリティはこのファイルから出力を取得します。

ということで、Linux CPU に関する情報を取得するための 9 つのコマンドを以下に示します。

1. cat コマンドを使用して CPU 情報を取得する

/proc/cpuinfo の内容を表示することで、システム CPU の情報を簡単に表示できます。 次のように cat コマンドを使用してファイルを作成します。

$ cat /proc/cpuinfo

Linux CPU 情報

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

少し具体的にするには、grep コマンドを使用できます。これは、プレーンテキスト データから正規表現に一致する行を検索するための CLI ツールです。これは、ベンダー名、モデル名、プロセッサ数、コア数などを出力する場合にのみ役立ちます。

$ 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 

推奨読書:Linux で例とともに「cat」および「tac」コマンドを使用する方法

2. lscpu コマンド – CPU アーキテクチャ情報を表示

コマンドlscpu sysfs から CPU アーキテクチャ情報を出力します。 および /proc/cpuinfo 以下に示すように:

$ lscpu

Linux 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: 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. cpuid コマンド – x86 CPU を表示

コマンドcpuid CPUID 命令から収集された CPU に関する完全な情報をダンプし、その情報から x86 CPU の正確なモデルも検出します。

実行する前に必ずインストールしてください。

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

インストールしたら、cpuid を実行します。 x86 CPU に関する情報を収集します。

$ cpuid

x86 CPU 情報を表示します

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. dmidecode コマンド – Linux ハードウェア情報を表示します

dmidecode は、Linux システムのハードウェア情報を取得するためのツールです。コンピュータの DMI (別名 SMBIOS) テーブルの内容を人間が判読できる形式でダンプし、簡単に取得できるようにします。 SMBIOS 仕様ではさまざまな DMI タイプが定義されており、CPU では次のように「プロセッサ」を使用します。

$ sudo dmidecode --type processor

Linux ハードウェア情報を表示します

# 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. Inxi ツール – Linux システム情報を表示します

Inxi は、コンソールと IRC (インターネット リレー チャット) の両方を対象とした強力なコマンドライン システム情報スクリプトです。これを使用すると、ハードウェア情報を即座に取得できます。

次のようにインストールできます。

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

CPU ごとのクロック速度や CPU 最大速度 (利用可能な場合) など、完全な CPU 情報を表示するには、-C を使用します。 次のようにフラグを立てます:

$ inxi -C

Linux システム情報を印刷

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. lshw ツール – ハードウェア構成のリスト

ルシュウ は、コンピュータのハードウェア構成に関する詳細な情報を収集するための最小限のツールです。 -C を使用できます。 ハードウェア クラス、この場合は CPU を選択するオプション:

$ sudo lshw -C CPU

Linux ハードウェア構成を印刷

*-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 – GTK+ ウィンドウにハードウェア情報を表示します

ハード情報 GTK+ ウィンドウにハードウェア情報が表示されます。次のようにインストールできます。

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

インストールしたら、次のように入力します。

$ hardinfo 
マスター Linux:詳細な CPU 情報を取得するための 9 つの必須コマンド Linux システム情報

また、[レポートの生成] をクリックして、システム ハードウェア情報レポートを生成することもできます。 」ボタンを押します。下のインターフェースで [生成] をクリックします。 」と進んでください。生成するハードウェア情報カテゴリを選択できることに注意してください。

マスター Linux:詳細な CPU 情報を取得するための 9 つの必須コマンド システム情報レポートの生成

レポートを HTML 形式で生成したら、以下に示すように Web ブラウザから表示できます。

マスター Linux:詳細な CPU 情報を取得するための 9 つの必須コマンド Linux システムの詳細情報

8. hwinfo – 現在のハードウェア情報を表示します

hwinfo Linux システムに存在するハードウェアに関する情報を抽出するために使用されます。 CPU に関する情報を表示するには、--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 – 処理ユニットの数を表示

nproc コマンドは、コンピュータ上に存在する処理ユニットの数を表示するために使用されます。

$ nproc

追加の使用法情報とオプションについては、次のようにこれらのコマンドのマニュアル ページを読んでください。

$ man commandname

また、以下もチェックしてください。

<オル>
  • Cpustat – Linux でプロセスを実行することにより CPU 使用率を監視
  • CoreFreq – Linux システム用の強力な CPU 監視ツール
  • Linux でのメモリと CPU の使用率が最も高く、実行中のプロセスを検索する
  • 「Stress-ng」ツールを使用して Linux に高 CPU 負荷とストレス テストを課す方法
  • 今のところはここまでです! Linux で CPU 情報を抽出するその他の方法を、以下のフィードバック フォームから共有していただけます。


    1. iPerf3 – Linux の正確なネットワーク スループットと速度テスト

      iperf3 は、リアルタイムのネットワーク スループット測定を実行するための、無料のオープンソース、クロスプラットフォームのコマンドライン ベースのプログラムです。これは、IP ネットワークで達成可能な最大帯域幅をテストするための最も強力なツールの 1 つです (IPv4 をサポート) およびIPv6 ). [こちらもお勧めです:Linux 用の 17 の便利な帯域幅監視ツール ] iperf を使用する では、タイミング、バッファ、TCP、UDP、SCTP などのプロトコルに関連するいくつかのパラメータを調整できます。これは、ネットワーク パフォーマンスのチューニング操作に役立ちます

    2. シェルスクリプト言語での数式の計算–パートV

      あなたの人々は、シェルスクリプトを理解して、快適に感じるでしょう。 必要に応じて流暢に書きます。これは、このチュートリアルシリーズの最後の投稿であり、少し複雑な数学演算を実行します。 スクリプト言語を使用します。 シェルスクリプトの最後の4つの記事 年代順になっているシリーズ。 基本的なLinuxシェルスクリプト言語のヒントを理解する–パートI Linux初心者がシェルプログラミングを学ぶための5つのシェルスクリプト–パートII Linux BASHスクリプティングの世界を航海する–パートIII Linuxシェルプログラミングの数学的側面–パートIV フィボナッチ数列から始