Diyelim ki bir bilgisayar kullanıyorum, tipik bir modern bilgisayar az çok. Bir aygıt sürücüsü, ekranımda gördüğüm her şeyden sorumludur, bunu yazdığım gibi ekran da güncellenir (bu, elbette, Windows gibi bir işletim sistemi kapsamındadır).
Bunu, bir çekirdek olup olmadığını donanımın umursamadığı seviyeye indirelim ve sadece talimatlar alalım.
Temel olarak, GPU'lar her şeyi nasıl yapılacağını nasıl biliyor? Bir sürücü temel olarak bir sürücünün sağladığı özel talimatları kullanarak ikili verileri görüntülemek için mümkün veya gerekli olan her küçük, içsel veya donanım devre düzeyi işlevini kontrol ediyor mu?
Öyleyse, GPU bir CPU'nun yaptığı gibi gönderilen talimatları anlamak için "özel" bir dil veya "birleştirme" kullanıyor mu?
Bilgilerimde çok fazla boşluk var ve GPU'ların arkasında ve onlara doğrudan donanım aracılığıyla erişmekte hoş olmayan bir "gizem" var.
Örneğin, bir GPU ve CPU bir şekilde bağlanabilmelidir, bu nedenle bir GPU'ya CPU montajı ile ve doğru veri / adres veriyollarını uygulayarak erişmek mümkündür. Bir aygıt satıcısının GPU'yu bir sürücü dışında erişmesini imkansız kılamaz, çünkü sürücü de derlenmiş bir koddur ve programlanabilir bir devre olarak GPU'nun ikili talimatlarla çalışması gerekir.
Bu tür soruları sordum ve birçok sitede neden cevap vermeden şiddetle hızlı bir şekilde siliniyorlar, bu yüzden burada büyük gizem / sır nedir? Bir anakartta diğer herhangi bir erişim gibi erişilen bir donanım.
Yani gerçekten ... bunun yazılım ve donanım ile ilgili "tamam" bir soru olduğu varsayılarak, herkes satıcıya özgü dosyalar olmadan bir GPU'ya doğrudan erişebilir, çünkü dosyalar büyülü değildir.
Peki GPU'lar donanıma özgü doğrudan donanım perspektifinden donanıma özgü düzeyde nasıl programlanıyor?