İlk olarak, bazen belirli bir CPU için performansı artırabilecek veya verimliliği artırabilecek bir sürücü yamasının yayınlandığı durumlar vardır. Ama belli ki bu soruyu soruyorsunuz çünkü bu o kadar da yaygın değil. Ancak CPU sürücüsü optimizasyonlarının konsepti benzer.
GPU çok karmaşık bir devre parçasıdır. Bir CPU'da yapılması çok uzun süren belirli görevleri boşaltmak için var. Veri kümeleri ve bu verilerle ne yapılacağı hakkında talimatlar alırlar. GPU, verileri yönetilebilir bir şekilde sipariş edebilmeli ve ne yapacağını söylemek için talimatları yorumlayabilmelidir. Daha sonra veriler üzerinde bir dizi matematiksel işlem gerçekleştirmelidir. Bundan sonra, verileri yeniden yeniden sıralamalı ve sonuçları tamamlandığında işletim sistemine geri göndermelidir. Bu, bilgisayar grafik hattının çok basit bir açıklamasıdır . Verilerin programa hazır olması için atılması gereken çok sayıda adım vardır.
Şimdi, GPU komut kümelerini kabul etmeli ve donanımda çok karmaşık matematiksel işlemler uygulamalı olduğundan, bu boru hattı boyunca daha hızlı veya daha yavaş çalıştığı bilinen bazı şeyler olacaktır. Bir aygıt için sürücü yazmanın bir parçası, aygıta gönderilen verileri ve yönergeleri yorumlayarak, aygıtın anlayabilmesi için çevirmektir. Bir sürücü bunu yaparken, verilerin cihaza nasıl gönderileceği konusunda kararlar verebilir, böylece görevler mümkün olan en kısa süreyi alır. Bununla birlikte, bir sürücü genellikle hizmet verdiği program hakkında ne çok bilgi sahibi değildir. Programdan aldığı tek şey API çağrılarıdır ("bir çizgi çizin", "bir noktayı renklendirin", "bir üçgeni gölgeleyin" vb.). Yani, yapabileceği varsayımlar çok iyi değil.
AMD veya nVidia belirli oyunlar için performans iyileştirmeleri içeren bir sürücü güncellemesi yayınladığında, bunun anlamı sürücünün hangi oyunun grafik donanımını çağırdığını algılaması ve oyunun nasıl olduğu hakkında bilinen bir dizi sabit kodlu varsayımlara sahip olmasıdır. uygulamıştır. Oyunun hızlı bir şekilde bellek içine ve dışına değiştirilmesi gereken çok sayıda doku görüntüsü olabilir veya belirli aydınlatma efektleri üretmek için anında çok fazla renk harmanlaması olabilir. Genellikle bir oyunun yapacağı şey, bu hesaplamaların nasıl yapılacağını açıklayan küçük programlar ("gölgelendiriciler" olarak adlandırılır) uygulamaktır ve yürütmek için GPU'ya gönderilir. Sürücü oyunun donanımı nasıl kullandığını biliyorsa, verileri düzenleyebilir ve istenen görevi verimi ve verimliliği artıracak şekilde gerçekleştiren talimat setlerini seçebilir.
Ancak, ürün gönderildikten sonra, GPU'nun bazı kısımlarında hatalar bulunabilir. Çip tasarlanırken validasyonda kaçırılmayacak kadar belirsiz olabilir, ancak belirli bir oyunda ona zarar veren bazı hatalı veya bozulamaz davranışlara (hatta çökmelere) neden olduğu bulunabilir. Bu durumda sürücü, CPU tarafına bir miktar hesaplama yükleyerek veya GPU'ya veri besleme şeklini değiştirerek bu duruma girmeyecek şekilde bu hatalı durumu algılar ve etrafında çalışır. Bunlar yine sürücü güncellemeleri şeklinde yayınlanacak.
Temel olarak, donanımın performansını değiştirmez, sadece donanımı nasıl kullandığını değiştirir, böylece aynı veri kümesinde daha verimli ve hızlı bir şekilde çalışabilir.