Rehber: Linux'ta AMD Turboboost(amd_pstate) kapatmak

Merhabalar. Bir dizüstü bilgisayar kullanıcısı olarak bilgisayarımın serin çalışması için Turbo Boost’u genelde kapatırım. BIOS’umda bu seçenek olmadığı için mecburi olarak işletim sistemi üzerinden kapatmam gerekiyor. Siz de aynı sorundan muzdarip iseniz bu rehber size umarım çözümü getirir.

Adım 1: GRUB ile Kernel parametlerini ayarlamak.
Bunun için /etc/default/grub dosyasını düzenlemeliyiz. Herhangi bir metin düzenleyici kullanabilirsiniz. Ben nano kullanacağım.

sudo nano /etc/default/grub

GRUB_CMDLINE_LINUX="" kısmını GRUB_CMDLINE_LINUX="quiet splash amd_pstate=disable" olarak düzenliyoruz.

UYARI: Eğer GRUB_CMDLINE_LINUX kısmında başka bir parametre var ise quiet splash amd_pstate=disable parametresini o parametreden sonra bir boşluk bırakıp ekleyin.

Kaydedip çıkıyoruz.

sudo grub-mkconfig -o /boot/grub/grub.cfg

Komutu ile config dosyasını oluşturuyoruz

Eğer amd_pstate’in aktif olduğu bir seçeneği GRUB menüsünde istiyorsanız bunları yapın:

sudo nano /boot/grub/grub.cfg

Bu kısıma gelin. ID’ler aynı olmak zorunda değil

Yaptığım değişiklikleri yapın. Ama bu değişiklikleri yaparken dikkat edin. Yaptıklarımı yine de metin olarak ekleyeyim:
Gelişmiş seçenekler alt menüsünde … Linux Linux …(çekirdeğiniz her neyse, zen, hardened vs.) kısmında parametrelerden amd_pstate=disable yerine amd_pstate=true yazmak. Ardından kaydedip çıkmak. Dilerseniz benim gibi adını değiştirebilirsiniz menünün. … Linux Linux … ile kısmını … Linux(amd_pstate) yapabilirsiniz. Tırnakların arasına yazmaya dikkat edin.

Bu ayarları yaptıktan sonra amd_pstate’in kapalı olduğu bir seçenekte Linux’u başlatın. Cpupower uygulaması ile cpupower frequency-info ile kontrol edin. Bu uygulama yoksa kurmanız gerekebilir.

Arch için kurulum:

pacman -S cpupower

Gördüğünüz gibi active kısmında no yazıyor. Yani kapanmış.

Bu adımları uyguladıktan sonra dahi amd_pstate sürücüsü haricinde bir Turbo hızlandırıcı açılabilir. Bunu kapatmak için yapmanız gereken:

su
echo 0 > /sys/devices/system/cpu/cpufreq/boost

yapmaktır.
Okuduğunuz için teşekkürler. Arch kullanıyorum ve Arch’ta bu adımlar ile turbo boost kapatılabiliyor. Bu adımlar başka bir dağıtımda çalışmazsa bana lütfen bildirin.

6 Likes

Ben cpu auto freq ile frekansı 1400 sabitlemiştim ama sanırım o işlemciyi limitliyor bu ise base değerlerine alıyor

Evet. Mesela benim işlemcim 3300 MHz. Turbo Boost ile 4.3GHz’ye kadar çıkıyor. Turbo Boost’u kapatınca en fazla 3300 MHz’ye çıkıyor. Boştayken 2GHz civarında çalışıyor.

Default grub dosyasını düzeltmemiz yeterli mi yoksa diğer kısımlarıda yapalım mı ?

Ek olarak bunun daha hızlı bir yolu var mı açmak ve kapatmak için eklenti tarzında ?

Eğer amd_pstate’in aktif olduğu bir seçenek istemiyorsanız varsayılan dosyayı düzenlemek yeterli. Onun haricinde amd_pstate kapalı iken aktif olan başka bir turbo boost sürücüsü daha var bundan bahsetmiştim zaten. Bunu hızlıca kapatmak için ise alias atayabilirsiniz. Uzun uzun kodu yazmak yerine boost_off gibi bir komut atayabilirsiniz.

sudo kod_düzenleyici /etc/bash.bashrc

En aşağıya bunu ekleyin:

alias boost_off='echo 0 > /sys/devices/system/cpu/cpufreq/boost'

Aktif etmek için onun altına

alias boost_on='echo 1 > /sys/devices/system/cpu/cpufreq/boost'

gibi bir alias atayabilirsiniz.
Kaydedip çıkın. Artık

su
boost_off

yaptığınızda kapatabilecek

su
boost_on

ile açabileceksiniz. Ancak bu kapatıp açtığınızın amd_pstate olmadığını, başka bir turbo hızlandırıcı sürücüsü olduğunu belirtmekte fayda var. amd_pstate’i açmak için GRUB’a amd_pstate’in açık olduğu bir seçenek eklemek ve o seçenekte bilgisayarı başlatmak lazım. Yukarıda bundan bahsettim.

Bu başka olan turba boost neden var ki onu anlamadım

Ben de anlayamadım maalesef onu. AMD’ninkini kapatınca başka sürücü açılıyor.