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

LinuxでCPU情報を確認する5つの方法

Linuxシステムのプロセッサに関する情報を取得する方法はいくつかあります。 LinuxでCPUをチェックするためのいくつかの追加の方法とともに、このタスクで私のお気に入りのツールを紹介します。

lscpuコマンドでCPU情報を取得

これは、CPU情報をシンプルで簡潔な出力で表示する最もシンプルなコマンドです。

システムのアーキテクチャ、プロセッサの数、ベンダー情報、キャッシュ情報、プロセッサ速度などを確認できます。

lsコマンドに似ているため、覚えやすいです。これは「listcpu」と考えることができます。

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

ええと…それは私のシステムのプロセッサ情報であり、Linuxシステムでも多少似ているはずです。

ご覧のとおり、最も重要な情報は、私のシステムにInteli5-7200Uプロセッサが搭載されていることです。 Webでこのモデル番号を検索して、詳細情報を入手できます。

しかし、出力の他のフィールドはどういう意味ですか?ここのプロセッサについて、実際にどのような情報がありますか?説明させてください。情報が技術的すぎるため、ここでの用語の基本的な理解が必要です。

lscpuコマンドの出力の説明

私のシステムのアーキテクチャは64ビットです。つまり、64ビットプロセッサです。

CPU op-modは32ビットと64ビットであり、32ビットと64ビットの両方のプロセッサとして動作できることを意味します。つまり、32ビットと64ビットの両方のオペレーティングシステムをインストールできます。

バイトオーダーはリトルエンディアンです。つまり、バイトはリトルエンディアンの順序に従って配置されます。

次の4行は、プロセッサ、CPU /コア、およびスレッドの数を示しています。この記事を読んで、プロセッサについて少し理解することをお勧めします。 Intelのこの写真は、ソケット、CPU、コア、スレッドの意味を視覚化するのにも役立ちます。

ここでは逆の順序で行かなければなりません。私のシステムにはここに1つのソケットがあります。つまり、CPU用のシングルチップが1つあります。

その1つのソケットには2つのコアがあります。これは、シングルチップに2つの物理CPUが搭載されていることを意味します。これにより、実際のコアの数、つまり実際の物理CPUがわかります。

ご覧のとおり、各コアには2つのスレッドがあります。スレッドは基本的に論理CPUです。スレッドは物理コアの物理実行リソースを共有しますが、オペレーティングシステムはそれらを個別のコアと見なします。ハイパースレッディングの詳細については、こちらをご覧ください。

つまり、私のシステムには2つの物理CPUを含む1つのチップがあり、各CPUは2つの論理CPUに分割されています。したがって、私のデュアルコアシステムはオペレーティングシステムから4つのCPUを搭載しているように見えます。

NUMAノードが1つあり、ベンダーはIntel、CPUファミリーは6です。

CPUモデル番号は142(私の意見では関係ありません)で、モデル名はIntel(R)Core(TM)i5-7200U CPU @ 2.50GHz(最も重要な情報)です。

ステッピングは、マイクロプロセッサが構築された設計変更のレベルを識別するためにインテルが使用する数値です。

私のCPUの現在のクロック速度は900.054MHzですが、最大容量は3100MHzと400MHzです。

BogoMIPSは、「プロセッサが1秒間に何百万回も何もできない」ことです。

仮想化はVT-xであり、「VirtualBox、VMware、Hyper-V、およびその他のアプリで作成された仮想マシンの高速化を支援する」ために使用されます。

次の4つのエントリはキャッシュに関するものです。 32KのL1D(データキャッシュ)、32KのL1I(命令キャッシュ)、256KのL2キャッシュ、3072KのL3キャッシュがあります。このwikiページを読んで、CPUキャッシュに関する簡単な情報を入手してください。

次は、各CPU(論理CPUと物理CPUの両方)のNUMAノードです。

最後の行は、メーカー固有の機能フラグのリストです。詳細については、こちらをご覧ください。

この図は、lscpuコマンドから取得する最も重要なプロセッサ情報をまとめたものです。

私の意見では、lscpuコマンドは、必要なすべての情報を提供するのに十分すぎるほどです。

LinuxでCPU情報を確認するためのその他のコマンド

LinuxコマンドラインでCPU情報を取得する方法は他にもあります。一つずつ見せてあげましょう。ただし、それらの出力については詳しく説明しません。

1。 / proc / cpuinfo

の内容を確認してください

Linuxのディレクトリ構造を知っている場合は、procがLinuxの特別なディレクトリであることをすでに知っています。これは実際には、システムメモリ、マウントされたデバイス、ハードウェア構成などのランタイムシステム情報を含む仮想ファイルシステムです。

CPU情報が必要な場合は、procディレクトリにあるcpuinfoファイルの内容を読み取ることができます。

cpuinfoファイルには、プロセッサの各コアに関する詳細情報が含まれていることに注意してください。

たとえば、私のCPUの最初のコアには次の情報があります。

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:

CPUコア(物理コアと論理コアの両方を含む)の数だけが必要な場合は、grepコマンドをwcコマンドと一緒に使用できます。

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

4

2。 lshwコマンドを使用する

lshwは「リストハードウェア」の略です。明らかに、それはハードウェア情報をリストすることを意味します。

lshwコマンドはシステム上のすべてのハードウェアに関する情報を提供するため、探しているものを正確に見つけることは困難です。

これが、lshwコマンドが目的の検索を絞り込むためのオプションを提供する理由です。

プロセッサ情報のみを表示するには、次の方法でlshwコマンドを使用できます。

sudo lshw -class CPU

これにより、次のような出力が表示されます:

*-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。 hwinfoを使用する

hwinfoは、Linuxシステムのハードウェア情報を取得するためのもう1つのコマンドラインツールです。

おそらく最初にhwinfoツールをインストールする必要があります。 DebianとUbuntuでは、aptコマンドを使用してインストールできます。

sudo apt install hwinfo

インストールすると、次の方法でCPUの詳細を取得できます。

hwinfo --cpu

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。 dmidecodeコマンド

dmidecodeは、Linuxシステムのさまざまな種類のハードウェア情報を取得するためのもう1つのコマンドです。 Linuxでのメモリ使用量を確認できます。プロセッサ情報のみを取得するためにも使用できます。

sudo dmidecode --type processor

このコマンドにもsudoアクセスが必要です。次のような出力が表示されます:

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

結論

もちろん、Linuxのハードウェア情報を提供するツールは他にもたくさんあります。それらを利用してCPU情報を取得することもできます。

私の意見では、何も覚えたくない場合は、lscpuが最適なコマンドです。 / proc/cpuinfoファイルに依存することもできます。この2つを使用するだけで、設定が完了します。

CPU情報の確認を学んだので、Linuxでのディスク情報の確認についても読みたいと思うかもしれません。

このチュートリアルが気に入っていただけたでしょうか。ご質問やご提案がございましたら、下にコメントを残してください。


Linux
  1. OSとLinuxのバージョンを確認する方法

  2. Linuxシステムが32ビットか64ビットかを確認する方法

  3. Linuxでシステムの稼働時間を確認する方法

  1. LinuxでCPU温度を確認する方法

  2. Linuxでカーネルバージョンを確認する方法

  3. Linuxのシステム負荷を確認してください

  1. Linuxバージョンを確認する方法

  2. LinuxでCPU情報を確認または検索する方法

  3. Linuxサーバーで稼働時間を確認する方法