Будь-який спосіб перевірити тактову частоту мого процесора?


187

Чи є спосіб перевірити, на якій тактовій частоті працює мій процесор?

Я вже спробував, cat /proc/cpuinfoале тактова частота, яку я запускаю, не відображається. Я знаю, що Ubuntu 12.04 (Precision Pangolin) вимагає 700 МГц і VGA, але чи буде працювати AMD Mobile Sempron?


Вам потрібно конкретизувати другу частину запитання. Чи знаєте ви номер моделі?
LiveWireBT

Дякую за всі відповіді, але я добре зараз!
користувач1610406

Відповіді:


199

Від типу командного рядка lscpu. Інформація буде на МГц процесора:

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

12
Зауважте, що значення МГц процесора не є фіксованим і може змінюватися до другого.
Серін

18
Якщо ви хочете , щоб його оновлення в режимі реального часу, це допоможе: watch -n1 "lscpu | grep 'MHz' | awk '{print $1}'".
Амаль Murali

1
@Ivan: Вибачте, нехтуйте цим. Вихід цієї команди:watch -n1 "lscpu | grep 'MHz' | awk '{print $1}'"
Амаль Муралі

3
@Ivan: Гаразд, ось ти:watch -n1 "lscpu | grep 'CPU MHz' | awk '{print $1}'"
Амаль Муралі

1
@Ivan: Для миттєвого спостереження вам не потрібно watch. Це буде робити: lscpu | grep 'CPU MHz' | awk '{ print $3; }'. Я не впевнений у точному виході, який ви отримуєте у вашій системі. Я поясню команду, якщо це допомагає: спочатку lscpuотримує повний висновок, що містить інформацію про ваш процесор, grepпотім шукає CPU MHzта виводить саме цей рядок, awkвиймає $N-thблок та виводить його. І якщо ви хочете, щоб результат змінювався в режимі реального часу, то оберніть команду в a watch -n1 "...".
Амаль Муралі

172

Є кілька способів:

  1. lscpuабо точніше lscpu | grep "MHz".
    Це дасть вам загальний МГц для процесора.

    $ lscpu | grep "MHz".
    CPU MHz:               1600.000
    
  2. cat /proc/cpuinfoабо точніше cat /proc/cpuinfo | grep "MHz".
    Це дасть вам індивідуальний МГц для кожного ядра процесора. Тож якщо у вас є Core 2 Duo, AMD Bulldozer, Core i7 тощо., Він покаже МГц для кожного ядра.

    $ 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 cpuабо більш точна версія: lshw -c cpu | grep capacity
    Дасть вам загальний МГц. Те саме, що 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 processorабо точніше: sudo dmidecode -t processor | grep "Speed"не тільки дасть МГц у використанні, але й максимум, на який ви можете підштовхнути / розігнати ваш процесор.

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

З усього цього, lshwі dmidecodeнадайте найкращу інформацію зі свого процесора.

Ви також можете орієнтуватися на поточний МГц, виявлений ядром, запитуючи файли журналу:

cat /var/log/dmesg | grep "MHz processor" - Для поточної виявленої швидкості МГц

cat /var/log/kern.log | grep "MHz processor"- Для поточних та минулих виявлених швидкостей МГц. У деяких випадках не вийде, тому я опублікував dmesgперший.

І це все, що я пам’ятаю з верхньої частини голови. Я впевнений, що існують і інші способи, просто зараз не пам'ятаю. Звичайно, говорити про термінальні шляхи.


1
Для мене всі параметри, крім dmidecode, дали помилкове читання: я розгоняю чип Intel E6600 2,4 ГГц на гігабайтній га-965p-ds3 3,3 платі з 7-кратним множником і 400 МГц частотою процесора, щоб дати процесор 2,8 ГГц, але множник запасів - 9 (9x266 = 2,4 ГГц), тому я підозрюю, що решта інструментів припускають, що множник є запасом і часом, ніж процесорний МГц, тому в моєму випадку всі вони дають 3,6 ГГц.
dez93_2000

3
dmidecodeЗдається, єдиний, хто точно повідомляє тактову швидкість при розгоні
Авіндра Голчаран

1
Зауважте, що в dmidecodeцілому не можна довіряти інформації, яка є точною для вашої системи, оскільки вона просто зчитує дані з таблиць DMI, що може бути неправильним. Сторінка man для dmidecode навіть говорить, що інформація є "можливо недостовірною" і продовжує: "Таблиця DMI не описує лише те, з чого складається система, вона також може повідомляти про можливі еволюції (наприклад, найшвидший підтримуваний процесор або підтримується максимальний об'єм пам'яті). " "Найчастіше інформація, що міститься в таблицях DMI, є неточною, неповною або просто неправильною."
Серран

1
dmidecodeСхоже, це не працює, він показує, що процесор застряг на максимальній частоті, що не точно, я впевнений. powertopі lscpuпоказати фактичну змінну частоту.
Рольф

1
Вам не потрібно cat /path/to/file | grep "some string"- ви можете просто grepфайл безпосередньо , замість цього: grep "some string" /path/to/file. Хоча дивовижна відповідь.
mgarey

89

Для поточної швидкості процесора можна динамічно спостерігати за цією зміною в режимі реального часу, використовуючи:

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

Щоб побачити максимальну швидкість процесора, використовуйте:

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

4
+1, я знаю, що це сайт Ubuntu, але це, здається, єдина відповідь, що забезпечує команду, яка повністю не залежить від ОС.
Енді Е

Якщо вам заборонено читання дозволу на считування масштабування_max_freq, спробуйте cpuinfo_max_freq.
LightStruk

6
cpufreq/cpuinfo_cur_freqне існує
Ken Sharp

1
+1, навіть у кількох системах на базі ARM, що працюють убтуну, працює лише це рішення. Усі «рішення», наведені на цій сторінці, не спрацьовують, хоча це працює скрізь.
Філіпос

4
freq драйвер процесора intel_pstate не надає cpuinfo_cur_freq. cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driverщоб побачити, який драйвер зараз використовується. BTW, cpuinfo_cur_freqє апаратною точкою зору і scaling_cur_freqє точкою зору ядра поточної частоти процесора. Більше на static.lwn.net/kerneldoc/admin-guide/pm/…
Yasushi Shoji

15

селектор-індикатор-cpufreq - хороший маленький інструмент індикатора, який показує вашу поточну частоту процесора. Ви навіть можете вибрати бажану частоту процесора.

введіть тут опис зображення

Однак останнє оновлення цього інструменту було 2015-10-19 .


5
Ви можете встановити його за допомогою sudo apt-get install indicator-cpufreq.
Вільф

2
А після встановлення вам потрібно буде перезавантажитись, перш ніж вона з’явиться.
талірик

Не працює добре в новішому Ubuntus, якщо він взагалі є.
Кен Шарп

7

Я хотів би зазначити, що sudoпотрібно для відповіді Яна вище:

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

Однак ви можете отримати ті ж результати, що не користуються sudo, використовуючи:

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

Мій улюблений - використовувати Conky, де ви можете намалювати власну картинку:

Conky.gif

Це постійно знаходиться праворуч від мого вбудованого дисплея. Відповідний код для розділу CPU:

${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
Де Конкі і що це?
not2qubit

@ not2qubit Я оновлю цю відповідь пізніше, але тим часом дивіться цю статтю Arch Linux: wiki.archlinux.org/index.php/conky
WinEunuuchs2Unix

6

Я просто хотів би додати i7zдо цього списку. На відміну від інших варіантів, це краще працює для процесорів у серіях i7, i5 та i3, у яких є TurboBoost.


Саме те, що мені було потрібно. А також показує напруги Vcore, множники Turbo, зупинки C0 тощо. Дуже приємно!
Андрій Макуха

Голова вгору вимагає 30 мб рубіну та різних інструментів.
Gringo Suave


2

Якщо ви використовуєте вбудований ARM пристрій (наприклад, малина або ARM телефонів на базі), ви не зможете використовувати рішення з використанням lscpu, dmidecodeабо /proc/cpuinfoтому , що поточна швидкість не в список, якщо інструмент на всі доступний. Натомість ви повинні використовувати 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

Ось простий спосіб отримати частоту процесора для всіх потоків процесора:

  1. Будьте впевнені, що cpufrequtilsвстановлено.

  2. Потім у терміналі запустіть таку команду:

    cpufreq-info | grep "frequency is"
    

2

Це чудово працює для швидкості процесора в режимі реального часу

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

Хоча це активно, ви також можете спамувати процесор, щоб побачити, які максимальні швидкості в режимі реального часу можуть досягти openssl speed



1

Я хотів поділитися цим коментарем, але не маю багато репутації на askubuntu. Людям, які хочуть використовувати індикатор-cpufreq, не потрібно перезавантажувати комп'ютер. Скидання поточного сеансу X достатньо для відображення піктограми.

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

Ви можете перевірити параметр «Продуктивність та потужність», побачивши поточну частоту до

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

Як тільки ви натискаєте на більш низьку частоту / Powersave, управління живленням процесора починається, тим самим скорочуючи тактовий цикл.


Користувач знову вийде та
ввійде

1

Це мій улюблений:

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

Хоча якщо у вас є Turbo Boost (або Turbo Core, якщо AMD), ви, мабуть, віддасте перевагу:

sudo watch -n 1 -d cpupower monitor

який використовується cpupowerз групи linux-інструментів .


0

Вибірка зразка 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:

Тут cpu MHzмається на увазі поточна частота процесора. Ви можете бігти, cpufreq-infoщоб зрозуміти легко.


зайві і довгі!
Рішав Амбаста

0

У терміналі Linux введіть таку команду, щоб отримати ім'я основного процесора та його поточну швидкість:

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


0

sudo powertop потім двічі натисніть Tab, щоб перейти на вкладку "Статистика частоти".

Він відображає фактичну частоту (точну на моєму ноутбуці, на відміну від dmidecode), а також статистику про те, як довго витрачається кожна доступна частота.


Чи є у нього конкретна лінія для поточної частоти? Здається, просто показує% часу, коли кожна частота + режим холостого ходу "активна", жодна ознака того, яка зараз активна?
Xen2050

@ Xen2050 частота процесора може змінюватися вперед і назад протягом мілісекунд, тому мене більше цікавить статистика. Можна запустити powertop -t 1з невеликою затримкою, щоб статистика оновлювалася щосекунди.
Рольф

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.