GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでCPU情報を取得する

CPU(中央処理装置)は、単にプロセッサと呼ばれることが多く、コンピュータの重要なコンポーネントの1つです。あらゆる種類のデータ処理操作を実行し、多くの場合、コンピューターの頭脳と呼ばれます。

システムに搭載されているCPUの種類とCPU速度について疑問に思ったことはありませんか?マシン内にあるCPUを知る必要がある理由はさまざまです。おそらく、カーネルモジュールをロードしているか、ハードウェア関連の問題をデバッグしています。理由が何であれ、Linuxでは、コマンドラインからプロセッサの種類と速度を簡単に判断できます。

LinuxでCPU情報を取得する#

使用しているCPUのタイプを判別する最も簡単な方法は、/proc/cpuinfoの内容を表示することです。 仮想ファイル。

proc/cpuinfoを使用してプロセッサのタイプを識別する ファイルに追加のプログラムをインストールする必要はありません。使用しているLinuxディストリビューションに関係なく機能します。

ターミナルを開き、lessを使用します またはcat /proc/cpuinfoの内容を表示します :

less /proc/cpuinfo

このコマンドは、各論理CPUに識別番号を出力します。たとえば、8コアプロセッサを使用している場合、0から7までのすべてのコアのリストが表示されます。出力の例を次に示します。

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 142
model name	: Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
stepping	: 10
microcode	: 0x96
cpu MHz		: 700.120
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 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	: 3600.00
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:

...

以下は、最も興味深い行の説明です:

  • プロセッサ -0から始まる各プロセッサの一意の識別番号。
  • モデル名 -プロセッサのブランドを含む、プロセッサのフルネーム。使用しているCPUの正確なタイプがわかれば、プロセッサの仕様に関する製品ドキュメントを確認できます。
  • フラグ -CPU機能。すべての機能のリストはここにあります。

出力をフィルタリングする場合は、grepを使用できます 指図。たとえば、使用するプロセッサ名のみを表示するには、次のようにします。

grep -m 1 'model name' /proc/cpuinfo
model name	: Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz

CPUの数を出力するには:

grep -c 'model name' /proc/cpuinfo
8

ソースからソフトウェアをコンパイルする必要があり、同時に実行できる並列プロセスの数を知りたい場合は、CPUの数を知っておくと便利です。 CPUの数を見つける別の方法は、nprocを使用することです。 コマンド:

nproc
8

lscpuでCPU情報を確認する #

lscpu CPUアーキテクチャに関する情報を表示するコマンドラインユーティリティです。 lscpu は、すべてのLinuxディストリビューションにインストールされているutil-linuxパッケージの一部です。

シェルプロンプトで、lscpuと入力します :

lscpu

CPUの数、アーキテクチャ、ベンダー、ファミリ、モデル、速度、キャッシュ、フラグなどに関する情報を含む、出力は次のようになります。

Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              8
On-line CPU(s) list: 0-7
Thread(s) per core:  2
Core(s) per socket:  4
Socket(s):           1
NUMA node(s):        1
Vendor ID:           GenuineIntel
CPU family:          6
Model:               142
Model name:          Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
Stepping:            10
CPU MHz:             593.577
CPU max MHz:         3400.0000
CPU min MHz:         400.0000
BogoMIPS:            3600.00
Virtualization:      VT-x
L1d cache:           32K
L1i cache:           32K
L2 cache:            256K
L3 cache:            6144K
NUMA node0 CPU(s):   0-7
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

/proc/cpuinfoのコンテンツとは異なり ファイルの場合、lscpuの出力にはすべての論理CPUのリストが表示されません。

結論#

このガイドでは、システムCPUに関する情報を見つける方法を説明しました。 dmidecodeなど、CPU名とベンダーを判別するために使用できる他のツールもあります。 、hardinfo およびlshw 、ただし、それらのほとんどはデフォルトでLinuxシステムにインストールされていません。

ご不明な点がございましたら、お気軽にコメントをお寄せください。


Linux
  1. dmidecode:Linuxでシステムハードウェア情報を取得する

  2. Linux – Elfバイナリからコンパイラ情報を取得できますか?

  3. C++ を使用して Linux で合計 CPU 使用率を取得する方法

  1. Linuxでシステムとハードウェアの情報を取得する方法

  2. CPU使用率を取得する方法

  3. LinuxでARM CPUクロック速度を取得するには?

  1. Linuxログファイル

  2. Linux ボックスのパフォーマンスのボトルネックを特定するにはどうすればよいですか?

  3. VMware ゲストの CPU 情報を取得する方法