Linux bellek yönetiminde RAM, "sayfa" (page) adı verilen parçalara bölünür. Varsayılan sayfa boyutu sadece 4KB kadar küçüktür. Bir oyun 8 GB VRAM/RAM ayırmak isterse, işlemcinin Çeviri Ön Belleği (TLB - Translation Lookaside Buffer) milyonlarca 4KB'lık sayfayı takip etmek zorunda kalır. Bu önbellek dolduğunda "TLB miss" (TLB ıskalaması) durumu yaşanır. Bu durumda işlemci, bellek tablolarını doğrudan RAM'den çekmek zorunda kalır; bu da daha uzun sürer ve oyunda mikro takılmalara (micro-stutter) yol açar.

HugePages, sistemin çok daha büyük bloklar (genellikle 2 MB veya hatta 1 GB) kullanmasına izin vererek bu mimariyi değiştirir. Bu da işlemcinin takip etmesi gereken sayfa sayısını önemli ölçüde azaltır, TLB ıskalamalarını en aza indirir ve genel bellek yönetimi yükünü (overhead) düşürür.

OptiScaler videosunda neden bundan bahsedildi?

OptiScaler, donanımınızdan en iyi şekilde yararlanmak için görüntü yükseltme (upscaling) çağrılarını yakalayan ve sarmalayan bir çeviri katmanı olarak çalışır. Proton/Wine üzerinden yüksek kare hızları elde etmeye çalışırken ve RX 9070 XT'yi beslemek için bir sarmalayıcı (wrapper) kullandığınızda, işlemci yükü bazen veri hattında darboğaz (bottleneck) yaratabilir.

Linux oyuncuları, Resident Evil Requiem veya Diablo IV gibi ağır ve bellek yoğun oyunlarda %1 low FPS değerlerini artırmak ve harita geçişlerindeki takılmaları (traversal stutter) ortadan kaldırmak için genellikle Transparent HugePages'i (THP) zorla etkinleştirir.

Fedora'da bu sistem nasıl çalışır?

Fedora'da THP genellikle varsayılan olarak "madvise" ayarındadır; yani oyun veya uygulamanın bunu kullanmak için açıkça bir talepte bulunması gerekir. Şu komutu çalıştırarak mevcut durumunuzu kontrol edebilirsiniz:

Bash:
cat /sys/kernel/mm/transparent_hugepage/enabled

Eğer yorumu yapan kişi, OptiScaler testlerinizde performans artışı sağlayıp sağlamayacağını görmek için bunu genel olarak etkinleştirmenizi öneriyorsa, muhtemelen ayarı "always" konumuna getirmenizi istiyordur. Şu komutu çalıştırarak bunu geçici olarak (sistem yeniden başlatıldığında sıfırlanır) test edebilirsiniz:

Bash:
echo always | sudo tee /sys/kernel/mm/transparent_hugepage/enabled > /dev/null

Fedora'da bir çekirdek (kernel) parametresini kalıcı hale getirmenin en temiz ve güvenli yolu, sistemde varsayılan olarak gelen grubby aracını kullanmaktır. Doğrudan yapılandırma dosyalarını elle düzenlemekten çok daha pratiktir.

İşte adımlar:
  1. Terminali açın ve THP'yi her zaman aktif edecek parametreyi mevcut ve gelecekteki tüm çekirdeklere eklemek için şu komutu girin:

    Bash:
    sudo grubby --update-kernel=ALL --args="transparent_hugepage=always"

    1776467077574.webp
  2. Parametrenin başarıyla eklendiğinden emin olmak için varsayılan çekirdeğinin argümanlarını kontrol edebilirsin:

    sudo grubby --info=DEFAULT

    (Çıktıdaki args= satırının içinde transparent_hugepage=always ifadesini görmelisin.)
  1. Sistemin yeni çekirdek parametresiyle başlaması için bilgisayarını yeniden başlat.
  2. Yeniden başlattıktan sonra tekrar cat /sys/kernel/mm/transparent_hugepage/enabled komutunu girdiğinde sonucun [always] madvise never şeklinde kalıcı hale geldiğini göreceksin.

Eski Haline Döndürmek


Eğer ileride bu ayarın bellek tüketimini gereksiz artırdığını düşünürseniz veya varsayılan ayarlara dönmek isterseniz, şu komutla eklediğin parametreyi silebilirsiniz:

Bash:
sudo grubby --update-kernel=ALL --remove-args="transparent_hugepage"