Bất kỳ cách nào để kiểm tra tốc độ xung nhịp của bộ xử lý của tôi?


187

Có cách nào để kiểm tra tốc độ xung nhịp mà bộ xử lý của tôi đang chạy không?

Tôi đã thử cat /proc/cpuinfonhưng tốc độ đồng hồ tôi đang chạy không hiển thị. Tôi biết Ubuntu 12.04 (Pangolin chính xác) cần 700 MHz và VGA, nhưng liệu một Sempron di động AMD có hoạt động không?


Bạn cần cụ thể hơn về phần thứ hai của câu hỏi của bạn. Bạn có biết số mô hình?
LiveWireBT

Cảm ơn bạn cho tất cả các câu trả lời nhưng bây giờ tôi tốt!
dùng1610406

Câu trả lời:


199

Từ loại dòng lệnh lscpu. Thông tin sẽ ở CPU MHz:

~$ lscpu | grep MHz
CPU MHz:               804.901
CPU max MHz:           3200.0000
CPU min MHz:           800.0000

12
Lưu ý rằng giá trị của CPU MHz không cố định và có thể thay đổi theo giây.
Cerin

18
Nếu bạn muốn cập nhật theo thời gian thực, điều này sẽ giúp : watch -n1 "lscpu | grep 'MHz' | awk '{print $1}'".
Amal Murali

1
@Ivan: Xin lỗi, coi thường điều đó. Đầu ra của lệnh này:watch -n1 "lscpu | grep 'MHz' | awk '{print $1}'"
Amal Murali

3
@Ivan: Được rồi, bạn đi đây:watch -n1 "lscpu | grep 'CPU MHz' | awk '{print $1}'"
Amal Murali

1
@Ivan: Để quan sát nhất thời, bạn không cần watch. Điều này sẽ làm : lscpu | grep 'CPU MHz' | awk '{ print $3; }'. Tôi không chắc chắn về đầu ra chính xác mà bạn nhận được trên hệ thống của mình. Tôi sẽ giải thích lệnh nếu điều đó có ích: trước tiên hãy lscpulấy đầu ra đầy đủ chứa thông tin liên quan đến CPU của bạn, grepsau đó tìm kiếm CPU MHzvà in ra dòng đó, awklấy ra $N-thkhối và hiển thị nó ra. Và nếu bạn muốn kết quả thay đổi theo thời gian thực, thì hãy bọc lệnh trong a watch -n1 "...".
Amal Murali

172

Có một vài cách khác nhau:

  1. lscpuhoặc chính xác hơn lscpu | grep "MHz".
    Điều này sẽ cung cấp cho bạn MHz chung cho CPU.

    $ lscpu | grep "MHz".
    CPU MHz:               1600.000
    
  2. cat /proc/cpuinfohoặc chính xác hơn cat /proc/cpuinfo | grep "MHz".
    Điều này sẽ cung cấp cho bạn MHz riêng cho từng CPU CPU. Vì vậy, nếu bạn có Core 2 Duo, AMD Bulldozer, Core i7, v.v. nó sẽ hiển thị MHz cho mỗi lõi.

    $ cat /proc/cpuinfo | grep "MHz"
    cpu MHz     : 1600.000
    cpu MHz     : 1600.000
    cpu MHz     : 1600.000
    cpu MHz     : 1600.000
    cpu MHz     : 1600.000
    cpu MHz     : 1600.000
    cpu MHz     : 1600.000
    cpu MHz     : 3400.000
    
  3. lshw -c cpuhoặc phiên bản chính xác hơn: lshw -c cpu | grep capacity
    Sẽ cung cấp cho bạn MHz chung. Tương tự như lscpu.

    $ lshw -c cpu | grep capacity
    WARNING: you should run this program as super-user.
           capacity: 1600MHz
    WARNING: output may be incomplete or inaccurate, you should run this program as super-user.
    
  4. sudo dmidecode -t processorhoặc chính xác hơn: sudo dmidecode -t processor | grep "Speed"Sẽ không chỉ cung cấp cho bạn một MHz đang sử dụng mà còn tối đa bạn có thể đẩy / ép xung CPU của mình.

    $ sudo dmidecode -t processor | grep Speed
    [sudo] password for cyrex: 
        Max Speed: 4000 MHz
        Current Speed: 2666 MHz
    

Trong số này, lshwdmidecodecung cấp thông tin tốt nhất từ ​​CPU của bạn.

Bạn cũng có thể nhắm mục tiêu MHz hiện tại được phát hiện bởi kernel bằng cách truy vấn các tệp nhật ký:

cat /var/log/dmesg | grep "MHz processor" - Đối với tốc độ MHz được phát hiện hiện tại

cat /var/log/kern.log | grep "MHz processor"- Đối với tốc độ MHz được phát hiện hiện tại và quá khứ. Sẽ không hoạt động trong một số trường hợp, đó là lý do tại sao tôi đăng bài dmesgđầu tiên.

Và đó là tất cả những gì tôi có thể nhớ từ đỉnh đầu. Tôi khá chắc chắn có những cách khác, chỉ cần không nhớ ngay bây giờ. Tất nhiên, nói về cách thiết bị đầu cuối.


1
Đối với tôi, tất cả các tùy chọn ngoại trừ dmidecode đều cho kết quả sai: Tôi đang ép xung chip intel E6600 2.4ghz trên bo mạch gigabyte ga-965p-ds3 3.3 với hệ số nhân 7x và tần số CPU 400 mhz để cung cấp CPU 2,8ghz, nhưng hệ số nhân là 9 (9x266 = 2.4ghz) vì vậy tôi nghi ngờ phần còn lại của các công cụ giả định hệ số nhân là chứng khoán và số lần mà CPU mhz, vì vậy trong trường hợp của tôi, tất cả chúng đều cho 3.6ghz.
dez93_2000

3
dmidecodedường như là người duy nhất báo cáo chính xác tốc độ xung nhịp khi ép xung
Avindra Goolcharan

1
Lưu ý rằng thông tin từ dmidecodenói chung không thể được tin cậy là chính xác cho hệ thống của bạn vì nó chỉ đọc dữ liệu từ các bảng DMI, có thể sai. Trang man cho dmidecode thậm chí còn cho biết thông tin là "có thể không đáng tin cậy" và tiếp tục: "Bảng DMI không chỉ mô tả hệ thống hiện được tạo ra, nó cũng có thể báo cáo các diễn biến có thể xảy ra (như CPU ​​được hỗ trợ nhanh nhất hoặc số lượng bộ nhớ tối đa được hỗ trợ). " "Thường xuyên hơn không, thông tin trong các bảng DMI không chính xác, không đầy đủ hoặc đơn giản là sai."
Cerran

1
dmidecodedường như không hoạt động, nó cho thấy CPU bị kẹt ở tần số tối đa, điều này không chính xác, tôi khá chắc chắn. powertoplscpuhiển thị tần số biến thực tế.
Rolf

1
Bạn không cần phải cat /path/to/file | grep "some string"- bạn chỉ có thể greptrực tiếp gửi tệp : grep "some string" /path/to/file. Câu trả lời tuyệt vời, mặc dù.
mgarey

89

Đối với tốc độ CPU hiện tại, người ta có thể theo dõi động sự thay đổi này trong thời gian thực bằng cách sử dụng:

sudo watch -n 1  cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq

Để xem tốc độ CPU tối đa, sử dụng:

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_max_freq 

4
+1, tôi biết đây là một trang Ubuntu, nhưng đây dường như là câu trả lời duy nhất cung cấp một lệnh hoàn toàn độc lập với hệ điều hành.
Andy E

Nếu bạn nhận được Quyền từ chối khi cố gắng đọc scaling_max_freq, hãy thử cpuinfo_max_freq.
LightStruk

6
cpufreq/cpuinfo_cur_freqkhông tồn tại
Ken Sharp

1
+1, ngay cả trên một số hệ thống dựa trên ARM chạy ubtunu chỉ có giải pháp này hoạt động. Mỗi và mọi "giải pháp" khác được đưa ra trên trang này đều thất bại ở đó, trong khi điều này hoạt động ở mọi nơi.
Phi

4
Trình điều khiển freq CPU intel_pstate không cung cấp cpuinfo_cur_freq. cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driverđể xem những gì trình điều khiển hiện đang được sử dụng. BTW, cpuinfo_cur_freqlà quan điểm của phần cứng và scaling_cur_freqlà quan điểm của hạt nhân về tần số CPU hiện tại. Thêm thông tin về static.lwn.net/kerneldoc/admin-guide/pm/ Kẻ
Yasushi Shoji

15

Indicator-cpufreq-selector là một công cụ chỉ báo nhỏ đẹp hiển thị tần số cpu hiện tại của bạn. Bạn thậm chí có thể chọn tần số cpu mong muốn.

nhập mô tả hình ảnh ở đây

Tuy nhiên, bản cập nhật cuối cùng cho công cụ này là vào ngày 2015-10-19 .


5
Bạn có thể cài đặt nó bằng cách sử dụng sudo apt-get install indicator-cpufreq.
Wilf

2
Và sau khi cài đặt, bạn sẽ cần khởi động lại trước khi nó xuất hiện.
Talyric 30/03/2015

Không hoạt động tốt trong Ubuntus mới hơn, nếu có.
Ken Sharp

7

Tôi muốn chỉ ra sudolà cần thiết cho câu trả lời của Ian ở trên:

sudo cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq

Tuy nhiên, bạn có thể nhận được kết quả tương tự mà không cần sử dụng sudo:

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq

Yêu thích của tôi là sử dụng Conky nơi bạn có thể vẽ bức tranh của riêng mình:

Conky.gif

Cái này nằm bên phải màn hình tích hợp của tôi mọi lúc. Mã có liên quan cho phần CPU là:

${color2}${voffset 5}Intel® i-7 3630QM 3.4 GHz: ${color1}@  ${color green}${freq} MHz   
${color}${goto 13}CPU 1 ${goto 81}${color green}${cpu cpu1}% ${goto 131}${color3}${cpubar cpu1 18}
${color}${goto 13}CPU 2 ${goto 81}${color green}${cpu cpu2}% ${goto 131}${color3}${cpubar cpu2 18}
${color}${goto 13}CPU 3 ${goto 81}${color green}${cpu cpu3}% ${goto 131}${color3}${cpubar cpu3 18}
${color}${goto 13}CPU 4 ${goto 81}${color green}${cpu cpu4}% ${goto 131}${color3}${cpubar cpu4 18}
${color}${goto 13}CPU 5 ${goto 81}${color green}${cpu cpu5}% ${goto 131}${color3}${cpubar cpu5 18}
${color}${goto 13}CPU 6 ${goto 81}${color green}${cpu cpu6}% ${goto 131}${color3}${cpubar cpu6 18}
${color}${goto 13}CPU 7 ${goto 81}${color green}${cpu cpu7}% ${goto 131}${color3}${cpubar cpu7 18}
${color}${goto 13}CPU 8 ${goto 81}${color green}${cpu cpu8}% ${goto 131}${color3}${cpubar cpu8 18}
${color1}All CPU ${color green}${cpu}% ${goto 131}${color1}Temp: ${color green}${hwmon 2 temp 1}°C ${goto 250}${color1}Up: ${color green}$uptime

1
Ở đâu Conky và nó là gì?
not2qubit

@ not2qubit Tôi sẽ cập nhật câu trả lời này sau nhưng trong thời gian chờ đợi, hãy xem bài viết Arch Linux này: wiki.archlinux.org/index.php/conky
WinEunuuchs2Unix

6

Tôi chỉ muốn thêm i7zvào danh sách này. Trái ngược với các tùy chọn khác, điều này hoạt động tốt hơn cho các CPU trong loạt i7, i5 và i3 có TurboBoost.


Chính xác những gì tôi cần. Và nó cũng hiển thị điện áp Vcore, số nhân Turbo, dừng C0, v.v ... Rất đẹp!
Andriy Makukha

Đứng lên, đòi hỏi 30mb ruby ​​và các loại công cụ.
Gringo Suave

3
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

2

Nếu bạn đang sử dụng một thiết bị ARM nhúng (chẳng hạn như một điện thoại mâm xôi hoặc ARM dựa), bạn sẽ không thể sử dụng các giải pháp sử dụng lscpu, dmidecodehoặc /proc/cpuinfobởi vì tốc độ hiện tại không được liệt kê ở đó, nếu công cụ này là ở tất cả có sẵn. Thay vào đó, bạn phải sử dụng sysfs :

alias getcpuf='i=1; for x in $(sudo cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq); do y=$(($x/1000)); echo "CPU-${i}: $y MHz"; i=$((i+1)); done;'

# getcpuf
CPU-1: 600 MHz
CPU-2: 600 MHz
CPU-3: 600 MHz
CPU-4: 600 MHz

2

Đây là một cách đơn giản để có được tần số cpu cho tất cả các luồng CPU:

  1. Hãy chắc chắn rằng đã cpufrequtilsđược cài đặt.

  2. Sau đó, trong một thiết bị đầu cuối, chạy lệnh sau:

    cpufreq-info | grep "frequency is"
    

2

Điều này hoạt động tốt cho tốc độ xử lý thời gian thực

 watch "grep 'cpu MHz' /proc/cpuinfo"

Trong khi điều này đang hoạt động, bạn cũng có thể spam bộ xử lý để xem tốc độ thời gian thực tối đa mà nó có thể đạt được là bao nhiêu openssl speed


1

Trong một thiết bị đầu cuối, nhập:

cat /proc/cpuinfo | grep name

Nó sẽ hiển thị mô hình chính xác của CPU của bạn.

Đây trang Wikipedia trên Sempron sẽ cung cấp cho bạn thông số kỹ thuật chi tiết.


1

Tôi muốn chia sẻ điều này dưới dạng một nhận xét, nhưng không có nhiều danh tiếng trên Askubfox, Những người muốn sử dụng chỉ số-cpufreq không cần phải khởi động lại máy tính. Đặt lại phiên X hiện tại là đủ để hiển thị biểu tượng.

sudo apt-get install indicator-cpufreq   
DISPLAY=:0 compiz --replace

Bạn có thể xác thực tùy chọn Hiệu suất và Quyền hạn bằng cách xem tần suất hiện tại bằng cách

watch -d "cat /proc/cpuinfo | grep -i Mhz"

Ngay khi bạn nhấp vào tần số thấp hơn / Powersave, bộ điều khiển năng lượng của CPU sẽ hoạt động, do đó làm giảm chu kỳ xung nhịp.


Người dùng đăng xuất và đăng nhập lại (nhưng không khởi động lại) có thể cũng hoạt động tốt
Xen2050

1

Đây là sở thích của tôi:

watch -n1 "cat /proc/cpuinfo | grep 'MHz'"

Mặc dù nếu bạn có Turbo Boost (hoặc Turbo Core nếu AMD), có lẽ bạn sẽ thích:

sudo watch -n 1 -d cpupower monitor

trong đó sử dụng cpupowertừ nhóm công cụ linux .


0

Sản lượng mẫu của cat /proc/cpuinfo

processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 69
model name  : Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
stepping    : 1
microcode   : 0x17
cpu MHz     : 774.000
cache size  : 4096 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 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid
bogomips    : 3591.40
clflush size    : 64
cache_alignment : 64
address sizes   : 39 bits physical, 48 bits virtual
power management:

processor   : 1
vendor_id   : GenuineIntel
cpu family  : 6
model       : 69
model name  : Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
stepping    : 1
microcode   : 0x17
cpu MHz     : 1600.000
cache size  : 4096 KB
physical id : 0
siblings    : 4
core id     : 0
cpu cores   : 2
apicid      : 1
initial apicid  : 1
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 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid
bogomips    : 3591.40
clflush size    : 64
cache_alignment : 64
address sizes   : 39 bits physical, 48 bits virtual
power management:

processor   : 2
vendor_id   : GenuineIntel
cpu family  : 6
model       : 69
model name  : Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
stepping    : 1
microcode   : 0x17
cpu MHz     : 800.000
cache size  : 4096 KB
physical id : 0
siblings    : 4
core id     : 1
cpu cores   : 2
apicid      : 2
initial apicid  : 2
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 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid
bogomips    : 3591.40
clflush size    : 64
cache_alignment : 64
address sizes   : 39 bits physical, 48 bits virtual
power management:

processor   : 3
vendor_id   : GenuineIntel
cpu family  : 6
model       : 69
model name  : Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
stepping    : 1
microcode   : 0x17
cpu MHz     : 774.000
cache size  : 4096 KB
physical id : 0
siblings    : 4
core id     : 1
cpu cores   : 2
apicid      : 3
initial apicid  : 3
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 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid
bogomips    : 3591.40
clflush size    : 64
cache_alignment : 64
address sizes   : 39 bits physical, 48 bits virtual
power management:

Ở đây cpu MHzcó nghĩa là tần số cpu hiện tại. Bạn có thể chạy cpufreq-infođể hiểu một cách dễ dàng.


dư thừa và lâu dài!
Rishav Ambasta

0

Trong thiết bị đầu cuối Linux, gõ lệnh sau để lấy tên lõi CPU và tốc độ hiện tại của nó:

cat /proc/cpuinfo | grep -E "model name|cpu MHz"


0

sudo powertop sau đó nhấn Tab hai lần để đến tab "Tần số thống kê".

Nó hiển thị tần số thực tế (chính xác trên Máy tính xách tay của tôi, trái ngược với dmidecode), cùng với các số liệu thống kê về thời gian sử dụng trong mỗi tần số có sẵn.


Liệu nó có một dòng cụ thể cho tần số hiện tại? Có vẻ như chỉ hiển thị% thời gian mỗi tần số + trạng thái không hoạt động là "hoạt động", không có dấu hiệu nào đang hoạt động ngay bây giờ?
Xen2050

@ Xen2050 Tần số CPU có thể thay đổi qua lại trong một phần nghìn giây, vì vậy tôi quan tâm nhiều hơn đến thống kê. Bạn có thể chạy powertop -t 1với độ trễ thấp, để các số liệu thống kê sẽ được cập nhật mỗi giây.
Rolf

0

Tinh chỉnh gnome Vitals cho thấy tâm trí của tôi chính xác hơn tới 2,5 (thậm chí 2,7Ghz) của Ryzen 2500 của tôi, những người khác cho thấy 2Gz. (pdfsandwich OCR'ing một tệp pdf là một trình kiểm tra tốt vì nó tối đa hóa tất cả các CPU)

https://extensions.gnome.org/extension/1460/vitals/

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.