Oyun dünyasında donanım standartları sürekli yükselirken, 8 GB ekran kartı (GPU) bellegine sahip kullanıcılar için oyun oynamak giderek zorlaşıyordu. Ancak, Valve ile çalışan bağımsız bir geliştiricinin geliştirdiği yeni bir yöntem, düşük VRAM'li ekran kartlarını tekrar kullanılabilir hale getirme potansiyeli taşıyor.
Basit Bir Teknikle Valve Geliştiricisi 8 GB GPU'lerde Akıcı Oyun Performansının Önünü Açtı
Özellikle 8 GB VRAM'e sahip düşük seviye ekran kartlarıyla oyun oynamak, günümüzdeki oyunların optimize edilmemiş sürümleri ve artan donanım fiyatları nedeniyle birçok PC oyuncusu için giderek güçleşiyor. Ancak, oyuncuların hissettiği bu zorluklara kayıtsız kalmayan bir isim, düşük VRAM'li ekran kartlarını tekrar hayata döndürecek yepyeni bir VRAM yönetim aracı geliştirdi.
AMD GPU'lar için açık kaynaklı Vulkan sürücüsü RADV üzerinde Valve ile birlikte çalışan bağımsız geliştirici Natalie Vock'un paylaştığı bilgilere göre, 8 GB VRAM'e sahip ekran kartlarıyla oyun oynamak artık mümkün olabilir. Geliştiricinin Pixelcluster GPU blogunda paylaştığı bu yenilik, GPU VRAM sorununa nasıl çözüm bulunduğunu detaylandırıyor.
Araştırmada, 8 GB VRAM'li düşük seviye bir ekran kartında oyun çalıştırıldığında ne olduğu inceleniyor. Standart bir masaüstü bilgisayarda, birkaç sekme açık bir tarayıcı ve diğer bazı uygulamaların, oyun başlamadan önce bile GPU'nun VRAM'inin yaklaşık dörtte birini tükettiği belirtiliyor. Cyberpunk 2077 gibi bir oyun çalıştırıldığında ise 8 GB'lık VRAM'in neredeyse tamamının kullanıldığı görülüyor.
Masaüstü bilgisayarlar ayrıca GPU VRAM'i ile sistem belleği arasında 'GTT' adı verilen bir bellek paylaşımı gerçekleştirir. Bu bellek GPU tarafından erişilebilir olsa da, GPU'nun sunduğu tam bant genişliği yerine çok daha düşük bir hızda çalışır. Bu durum performans düşüşüne yol açar. Cyberpunk 2077, GTT'ye 650 MB gibi bir alan ayırsa da, oyuna ek bellek talepleri oluştuğunda bu durum 'tahliye' adı verilen bir süreci tetikler.
Tahliye durumlarına çözüm olarak, rastgele işlem gruplarını tek bir organizasyonda toplamak için kullanılan 'cgroups' yapısı öne çıkıyor. 'Cgroups', RAM ve CPU için limitler belirleyebiliyor. Bu noktada, Maarten ve Maxime Ripard ile birlikte Natalie'nin geliştirdiği 'dmem cgroup denetleyicisi' devreye giriyor. Bu sayede, çekirdek tahliyelerden korunmak için bellek koruması sunabiliyor. Daha sonra yapılan ek ayarlamalar ve Natalie'nin katkıda bulunduğu yamalarla bellek kullanımı çok daha agresif bir şekilde yönetiliyor.
Bu yamalar uygulandıktan sonra Cyberpunk 2077 tekrar çalıştırıldığında sonuçlar gözlemlenebiliyor. Arka planda çalışan yoğun uygulamalara rağmen oyun, belleğe ek kaynak ayırmak yerine mevcut belleği daha verimli kullanıyor. Bu da 8 GB ve hatta 6 GB gibi daha düşük bellekli ekran kartlarında daha akıcı ve yönetilebilir bir oyun deneyimi sağlıyor.
Şu anda 'dmem cgroups', AMD ve Intel GPU'lar ile uyumlu. NVIDIA'nın kendi kapalı kaynak çekirdek modülleri nedeniyle bu teknolojiyi desteklemediği belirtiliyor. Ayrıca, entegre grafik işlemcileri (iGPU) için durum belirsizliğini koruyor; zira bu işlemciler ayrılmış belleğe sahip olmayıp sistem belleğini (GTT) kullanıyorlar. Ancak, bu yamanın onlarda da fayda sağlayabileceği umuluyor. Natalie'nin paylaştığı bu çalışma takdire şayan ve düşük VRAM'li ekran kartlarında çalışan oyunlara fayda sağlaması bekleniyor.