GNU/Linux >> Belajar Linux >  >> Linux

Jumlah prosesor di /proc/cpuinfo

Kata "CPU", "prosesor" dan "inti" digunakan dengan cara yang agak membingungkan. Mereka mengacu pada arsitektur prosesor. Inti adalah unit independen terkecil yang mengimplementasikan prosesor tujuan umum; prosesor adalah kumpulan inti (pada beberapa sistem ARM, prosesor adalah kumpulan cluster yang merupakan kumpulan inti). Sebuah chip dapat berisi satu atau lebih prosesor (chip x86 berisi satu prosesor, dalam arti kata prosesor ).

Hyperthreading berarti bahwa beberapa bagian inti digandakan. Inti dengan hyperthreading kadang-kadang disajikan sebagai kumpulan dari dua "inti virtual" - artinya bukan bahwa setiap inti itu virtual, tetapi jamaknya adalah virtual karena ini sebenarnya bukan inti yang terpisah dan kadang-kadang mereka harus menunggu sementara inti lainnya adalah memanfaatkan bagian bersama.

Sejauh menyangkut perangkat lunak, hanya ada satu konsep yang berguna hampir di semua tempat:gagasan eksekusi paralel. Jadi di sebagian besar manual perangkat lunak, istilah CPU dan prosesor digunakan untuk berarti salah satu bagian dari perangkat keras yang mengeksekusi kode program. Dalam istilah perangkat keras, ini berarti satu inti, atau satu inti virtual dengan hyperthreading.

Jadi top menunjukkan kepada Anda 4 CPU, karena Anda dapat menjalankan 4 utas secara bersamaan. /proc/cpuinfo memiliki 4 entri, satu untuk setiap CPU (dalam pengertian itu). processor angka (yang merupakan nomor dari cpuNUMBER entri di /sys/devices/system/cpu ) sesuai dengan 4 utas ini.

/proc/cpuinfo adalah salah satu dari sedikit tempat di mana Anda mendapatkan informasi tentang perangkat keras apa yang mengimplementasikan utas eksekusi ini:

physical id : 0
siblings    : 4
core id     : 0
cpu cores   : 2

artinya cpu0 adalah salah satu dari 4 utas di dalam komponen fisik (prosesor) nomor 0, dan itu ada di inti 0 di antara 2 di prosesor ini.


Hanya menjawab pertanyaan pertama Anda. Dalam keluaran cat /proc/cpuinfo Anda dapat melihat informasi berikut:-

physical id : 0
siblings    : 4
core id     : 0
cpu cores   : 2

Anda dapat melihat hitungan siblings is 4 dan cpu cores is 2 . cpu cores menjadi 2 adalah jumlah inti dalam prosesor yang dapat diperiksa dari spesifikasi yang diberikan di URL intel yang Anda berikan. Demikian pula siblings adalah yang ditentukan oleh jumlah utas yang disediakan oleh HTT intel.

Demikian pula, untuk id fisik adalah 0 yang menunjukkan hanya ada satu chip prosesor dan untuk id inti Anda dapat melihat 0 and 1 yaitu 2 core di prosesor.

Perbarui: Menambahkan jawaban untuk pertanyaan lain.

Bagaimana dengan turboboost? Apakah semua inti adalah turbo boost atau hanya fisik?

Baiklah saya akan mengatakan, semua core aktif adalah turbo-boosted. Hai sobat, Anda harus melihat contoh-contoh dari Wikipedia kita tercinta. Dijelaskan dengan perhitungan juga.

Any method in ubuntu to get current cpu freq. if processor is on turbo boost or not.

Turbo boost atau tidak, Anda dapat melihat detail freq di output lscpu . Dan untuk keluaran yang disempurnakan:-

lscpu | grep Hz

Anda dapat mencoba ini di terminal:

sudo lscpu

Ini akan memberi Anda gambaran tentang sifat fisik cpu Anda. Adapun turbo boost atau tidak, ini murni kontrol perangkat keras daripada OS itu sendiri, jadi kecuali Intel memiliki driver khusus untuk Linux yang dapat menyesuaikan kecepatan prosesor Anda, tidak ada petunjuk yang solid untuk memeriksa status turbo boost (kecuali ada kode perintah untuk itu. Periksa forum lain jika ada petunjuk terkait pertanyaan Anda).

Bagi saya, inilah yang saya dapatkan ketika saya mengetik perintah di atas. AMD saya mengatakan itu adalah quad core, tetapi inti fisik saya yang tercantum di sini hanya 2, dengan 2 utas per inti (bertambah hingga 4 inti). Saya menggunakan prosesor AMD A10 APU 5750m.

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:             AuthenticAMD
CPU family:            21
Model:                 19
Stepping:              1
CPU MHz:               2500.000
BogoMIPS:              4990.51
Virtualization:        AMD-V
L1d cache:             16K
L1i cache:             64K
L2 cache:              2048K
NUMA node0 CPU(s):     0-3

Linux
  1. Apa yang setara dengan /proc/cpuinfo di FreeBSD v8.1?

  2. Bagaimana cara mengetahui dari folder mana suatu proses sedang berjalan?

  3. Temukan HT-core mana yang berbagi inti fisik dari /proc/cpuinfo

  1. Linux – Apa Arti Bendera di /proc/cpuinfo?

  2. Linux – Menautkan /proc/mnt Ke /proc/mounts?

  3. Linux – Jumlah Prosesor di /proc/cpuinfo?

  1. Linux – /proc/pid/fd/x Nomor Tautan?

  2. /proc/[pid]/pagemaps dan /proc/[pid]/maps | linux

  3. Bagaimana cara mendapatkan jumlah CPU/core di Linux dari baris perintah?