Ubuntu ve işlemci hızı algılama


12

Televizyonumda medya merkezi olarak kullandığım eski bir dizüstü bilgisayarım var ve mümkün olduğunca sorunsuz çalışmasını sağlamak için genellikle farklı işletim sistemlerini ve Uygulamaları yüklüyorum / yeniden yüklüyorum / kaldırıyorum.

Fark ettiğim bir şey çok garipti. Dizüstü bilgisayarım, 1800mhz hızında çalışan üç çekirdekli AMD işlemciye sahip bir HP Pavilion G62. Windows 7'de XBMC'yi başlattığımda ve işlemci hızlarına baktığımda 1800mhz diyor. Ancak, başlatıcıdan veya bir oturum olarak Ubuntu'dan başlattığımda, işlemcinin sadece 800mhz olduğunu söylüyor.

Daha fazla araştırmak istedim, böylece hızın ne olduğunu görmek için Windows'ta DXDIAG yükledim. Tabii ki, 1800mhz olduğunu gösterir. Bununla birlikte, Ubuntu'da HardInfo'yu başlatırken, her bir çekirdeğin hızının aşağıdaki gibi olduğunu söylüyor: 1500mhz, 1500mhz ve 800mhz.

Bu hem reklamı yapılan işlemci hızının hem de Windows tarafından algılanan hızın yattığı veya yuvarlandığı anlamına mı geliyor? Yoksa Ubuntu'nun işlemci hızlarımı algılamasıyla ilgili bir sorun mu var ve sistemim olması gerektiği gibi en iyi şekilde çalışmıyor mu? İkincisini söylemeye meyilliyim ... çünkü Windows Ubuntu'dan çok daha düzgün çalışıyor gibi görünüyor.


4
Lütfen çıktısını gönderin cpufreq-info. sudo apt-get install cpufrequtilsİlk önce yüklemeniz gerekebilir .
terdon

2
"Başlatıcıdan veya oturum olarak Ubuntu'dan başlattığımda, işlemcinin sadece 800mhz olduğunu söylüyor." ekran görüntüsü alabilir misin?
Braiam

Yanıtlar:


11

Varsayılan olarak Ubuntu, ondemand frekans düzenleyicisini kullanır . Valileri kontrol etmek / değiştirmek için cpufrequtilspaketi şu şekilde yükleyin :

sudo apt-get install cpufrequtils

Her bir çekirdek çalışmanın mevcut hızını / düzenleyicilerini kontrol etmek için:

cpufreq-info

Tüm çekirdekleri şu şekilde performansa ayarlayabilirsiniz :

sudo cpufreq-set -r -g performance

Tüm çekirdeklerin şu anda maksimum frekanslarında çalıştığını doğrulayabilirsiniz:

grep MHz /proc/cpuinfo

Not : Bu değişiklik geçicidir. Yeniden başlattığınızda, geri almanız gerekir .


1
Bilgi için teşekkürler! Listelediğiniz komutları çalıştırdım ve ilk işlemci çekirdeğini 1800mhz'ye kadar çıkardı, ancak geri kalanı 800mhz idi. Bu, Sergey'in aşağıdaki ayrıntılı cevabına göre, büyük olasılıkla sistemim için normaldir.
Scotty_80

Cevabı, hangi cpu numarasının frekansının ayarlanması gerektiğini bildiren -c parametresini içerecek şekilde düzenledi. Tüm işlemci numaralarını bir kerede belirtmenin bir yolunu bulamadım. Ayrıca AC gücündeyken performans modunu etkinleştirmek için bir komut dosyası yazmaya çalışıyorum ve pildeyken ondemand modu. Bunun için zaten bir çözüm varsa, lütfen buraya ekleyin. Teşekkürler.
Sri

1
Tüm cpus'ların performansını tek seferde ayarlamak için, önce sudo su ile süper kullanıcı moduna geçin ve bunu kullanın: for ((i = 0; i <$ (nproc); i ++)); cpufreq-set -c $ i -r -g performansı yapın; bitti
Sri

10

Teorik arka plan: Tipik bir bilgisayarda, CPU çoğu zaman boştadır. Güçten tasarruf etmek için, modern CPU'lar frekans ölçeklendirme uygular - yani işletim sistemi, yük düşük olduğunda CPU'ya düşük frekansa geçmesini söyleyebilir. Teknolojiye Intel işlemcilerde SpeedStep ve AMD işlemcilerde Cool'n'Quiet adı verilir.

Linux'ta çekirdek frekansı ölçeklendirme, cpufreqfrekansı kontrol etmek için "valiler" kavramını kullanan altyapı tarafından uygulanır .

Varsayılan düzenleyici "ondemand" dır ve işlemci kullanımı% 95'in üzerine çıktığında frekansı artırır. Bu, CPU'nun boştayken biraz güç tasarrufu yapmasına, ancak yapılacak şeyler olduğunda tam performansa geçmesine izin verir. Milisaniye cinsinden ölçülen bir geçiş gecikmesi vardır, bu nedenle boş bir CPU aniden büyük bir yük aldığında, tam güce geçmeden önce birkaç milisaniye boyunca düşük frekansta çekmeye devam eder, bu nedenle bazı durumlarda bu, her zaman tam hızda çalışır.

CPU'yu her zaman tam frekansında çalıştıran "performans" düzenleyicisi de dahil olmak üzere başka valiler de vardır . Bu, anahtarlama gecikmesini ortadan kaldırır, ancak güç tüketimini artırabilir.

Başka bir cevapta önerildiği gibi farklı valilerle deney yapabilirsiniz, ancak bunun dramatik sonuçlar üreteceğinden şüpheliyim. Vakaların% 99'unda mantıklı olmadıkça bunu varsayılan yapmazlardı :)

Yine de sorunuza geri dönün: Büyük olasılıkla, Windows size mümkün olan maksimum CPU frekansını (CPU'nun kutusunda reklam verdikleri) gösterirken, Ubuntu size her CPU çekirdeğinin bu anda çalıştığı gerçek frekansı gösterir. Bu, Ubuntu'da CPU'nun daha yavaş çalıştığı anlamına gelmez. Ubuntu'nun dizüstü bilgisayarınızda yavaş çalıştığı anlaşılıyorsa, büyük olasılıkla başka bir şeyden kaynaklanır - örneğin, düşük RAM, yavaş sabit sürücü vb. Modern Ubuntu kesinlikle, muhtemelen Windows XP'den daha fazla kaynak gerektirir. eski bir dizüstü bilgisayar.

Daha fazla teknik okuma:


Bu kesinlikle açıklıyor! Ancak, valiyi Performans olarak ayarlayacak olsaydım, cpu çekirdeklerimin tümü 1800 mhz'de çalışmamalı mı? Şu anda ayarı değiştirdiğimde, yalnızca CPU1'i 1800mhz olarak ayarlıyor. Diğer 2 tanesi sadece 800 mhz. Sanırım bu sadece bir CPU sınırlaması olarak tebeşirlenebilir ...
Scotty_80 10:14
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.