Виявлення швидкості Ubuntu та процесора


12

У мене є старший ноутбук, який я використовую як медіа-центр на телевізорі, і я зазвичай встановлюю / перевстановлюю / видаляю різні ОС 'та програми, щоб змусити його працювати максимально плавно.

Одне, що я помітив, було дуже дивним. Мій ноутбук - HP Pavilion G62, який має триядерний процесор AMD, який працює на частоті 1800 МГц. Коли я запускаю XBMC з Windows 7 і дивлюся на швидкість процесора, він чітко говорить про 1800 МГц. Однак, коли я запускаю його з Ubuntu або з пускового пристрою, або як сеанс, він каже, що процесор становить лише 800 МГц.

Я хотів дослідити далі, тому я завантажив DXDIAG у Windows, щоб побачити, яка швидкість. Звичайно, це вказує, що це 1800 МГц. Однак, запускаючи HardInfo в Ubuntu, мені кажуть, що швидкість кожного ядра така: 1500 МГц, 1500 МГц і 800 МГц.

Чи означає це, що і рекламована швидкість процесора, і швидкість, виявлена ​​Windows, лежать чи округлюються? Або є проблема з Ubuntu виявленням швидкості мого процесора, і моя система працює не так оптимально, як слід? Я схильний би сказати останнє ... головним чином тому, що, здається, Windows працює набагато плавніше, ніж це робить Ubuntu.


4
Будь ласка, опублікуйте вихід cpufreq-info. Можливо, вам потрібно буде встановити його sudo apt-get install cpufrequtilsспочатку.
тердон

2
"коли я запускаю його з Ubuntu або з пускового пристрою, або як сеанс, він говорить, що процесор становить лише 800 МГц." ви могли б зробити знімок екрана?
Брайам

Відповіді:


11

За замовчуванням Ubuntu використовує регулятор частоти потреби. Щоб перевірити / переключити регулятори, встановіть такий cpufrequtilsпакет:

sudo apt-get install cpufrequtils

Щоб перевірити поточну швидкість / регулятори кожного запуску ядра:

cpufreq-info

Ви можете встановити всі ядра на продуктивність так:

sudo cpufreq-set -r -g performance

Ви можете підтвердити, що всі ядра тепер працюють на їх максимальній частоті, як це:

grep MHz /proc/cpuinfo

Примітка . Ця зміна є тимчасовою. Після перезавантаження він повернеться до вимоги .


1
Дякую за інформацію! Я керував перерахованими вами командами, і це ударило перше ядро ​​процесора до 1800 МГц, але решта були на 800 МГц. Це, згідно з відмінно детальною відповіддю Сергія нижче, швидше за все, нормально для моєї системи.
Scotty_80

Відредаговано відповідь, щоб включити параметр -c, який вказує, яку частоту чисельного числа потрібно встановити. Не вдалося знайти спосіб визначити всі номери процесора одночасно. Я також намагаюся написати сценарій, щоб увімкнути режим роботи в режимі живлення змінного струму та режимі попиту на батарею. Якщо хтось вже має рішення для цього, будь ласка, додайте тут. Дякую.
Шрі

1
Щоб встановити продуктивність усіх процесорів за один раз, спочатку перейдіть на режим суперкористувача за допомогою sudo su, а потім скористайтеся цим: for ((i = 0; i <$ (nproc); i ++)); виконати продуктивність cpufreq -c -c $ i -r -g; виконано
Шрі

10

Теоретичне підґрунтя: У типовому комп’ютері більшість часу процесор простоює. Для економії енергії сучасні процесори здійснюють масштабування частоти - тобто операційна система може сказати процесору перейти на нижчу частоту, коли навантаження низька. Технологія називається SpeedStep в процесорах Intel і Cool'n'Quiet в процесорах AMD.

У Linux масштабування частоти ядра реалізується cpufreqінфраструктурою, яка використовує поняття "губернатори" для управління частотою.

За замовчуванням регулятор - "попит", який збільшує частоту, коли використання процесора підвищиться вище 95%. Це дозволяє процесорові зекономити деяку потужність у режимі очікування, але все ж перейти на повну продуктивність, коли потрібно зробити щось. Існує деяка затримка переходу, виміряна в мілісекундах, тож коли непрацюючий процесор раптом отримує велике навантаження, він продовжує чутись на низькій частоті протягом декількох мілісекунд до переходу на повну потужність, тому в певній ситуації це може призвести до дещо нижчих показників, ніж коли завжди працює на повній швидкості.

Є й інші губернатори , включаючи "продуктивність", які завжди керують процесором на повній частоті. Це виключає затримку перемикання, але може збільшити споживання електроенергії.

Ви можете експериментувати з різними губернаторами, як запропоновано в іншій відповіді, але я сумніваюся, що це дасть драматичні результати. Вони не роблять це за замовчуванням, якщо це не має сенсу в 99% випадків :)

Повернімось до свого запитання: швидше за все, Windows показує вам максимально можливу частоту процесора (ту, яку вони рекламують у вікні процесора), а Ubuntu показує фактичну частоту роботи кожного з ядер CPU у цей конкретний момент. Це не означає, що процесор працює в Ubuntu повільніше. Якщо виявляється, що Ubuntu працює повільно на вашому ноутбуці, швидше за все, це викликано чимось іншим - наприклад, низькою оперативною пам’яттю, повільним жорстким диском і т. Д. Сучасний Ubuntu, безумовно, потребує більше ресурсів, ніж, скажімо, Windows XP, який ви, швидше за все, знайдете на старший ноутбук.

Більше технічного читання:


Це безумовно це пояснює! Однак, якби я встановив губернатора на продуктивність, чи не повинні всі мої процесорні ядра працювати на 1800 МГц? В даний час, коли я змінюю налаштування, він встановлює лише CPU1 до 1800 МГц. Інші 2 - лише на 800 МГц. Я припускаю, що це може бути обмежено обмеженням процесора ...
Scotty_80
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.