Şimdi Ara

DirectX 12 ile SLI/CF de Birleşik Vram kullanımı Onaylandı ! (5. sayfa)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
86
Cevap
5
Favori
3.880
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
Öne Çıkar
10 oy
Sayfa: önceki 12345
Sayfaya Git
Git
Giriş
Mesaj
  • bocekgrafik kullanıcısına yanıt
    quote:

    Oyun firmasının bozuk optimizasyonla çıkarttığı oyunu sürücü ile adam etmek mümkün o zaman. Doğru mu anladım?


    Tam değil. Çünkü en başta sen programcının kodlarına sahip değilsin. Normal vatandaşın kendi arasında opimizesi iyi olmayan demesi ile o kötü olmuyor. Vatandaş neye bakıyor, görsellik ne seviyede performans ne seviyede. Eğer beklediği kadar kalite yoksa veya fps iyi değilse optimizesi kötü diyip damgalıyor. Bi yerden sonra da kelimenin değeri anlamı kalmıyor, ayağa düştüğü için.

    Elinde geliştricinin kodları olmadığı için neyi neden nasıl yaptığını bilemiyorsun. Bu yüzden de şimdiki şartlar altında programcının çabasının az/kötü mü olduğunu yoksa peşinde koştuğu işin hakkını mı verdiğini bilmiyorsun. Performansın kötü veya kalitenin CGI gibi olmaması burda alakasız. Alakalı olan, adamın peşinden koştuğu ışıklandırma için kurduğu yapı saçma şekilde mi kurulu yoksa doğru düzgn mü kurmuş, orası önemli. Dışarıdan kimse programcının neyi amaçladığını bilmeden sırf kalite-performansa bakıp öyle opt. değil vs. diyemez (der kendi çapında muabbet adına der).

    Programcının araştırdığı peşine düştüğü yol, donanımın ve varolan API'ler yüzünden performans limitine takılıyorsa, bu da kaliteyi etkileyip daha iyi iş yapılamıyorsa, burdan çıkarılacak tek sonuç programcının render yaklaşımına donanım yetmiyor olur. Adamın bi denklemi mesela temel alıp bunu yeterince indirgeyip indirgemediğini bilemiyoruz (5. dereceyi mesela 2. dereceye). Bu temeli kodlarken mantıklı yolları mı seçti yoksa kafası daldı aralarda gecikme yaratan bişeylere mi yol açtı bilemiyoruz. vs. vs.

    Bizim elimizde gözlemci olarak sadece sonuç var. Sonuçtan memnun kalmamak ayrı bişey, sırf sonuçtan hareketle rezil bi yapı kurmuş demek farklı bişey. Burda tutup yapımcıları savunmuyorum, özellikle de çoğunluk tarafından mimlenmiş olan firmaları. Ama dışarıdan bakıp, kapı altından sızan ışıktan hareketle içerde parti veriyorlar sonucuna varmamak lazım onu söylüyrm. Çünkü varolan donanım ve API'ler üstünden iyi yapmaya çalıştığın mantıklı hareket ettiğin işin sonucu, sen neyi ne amaçla yaptığını bildiğinden sana mantıklı ve tatminkar gelirken olaya oyuncu açısından bakarsan ee ne var bunda denilebiliyor. Sen tutup Ambient Occlusion için çok gerçekçi bi yaklaşım kuruyorsun. Oyuncu bunu daha iyi perf aldığı başka bi oyun ile karşılaştırıyor, ne var diyor duvar dipleri biraz daha koyu, o koyuluğun dağılımı biraz daha farklı o kadar, bunun için mi benden 2 kat donanım istiyor tu senin kalıbına diyor.

    Şimdi burda herkes haklı. Sen, dünyanın kaç bucak olduğunu bildiğin için CGI grafiğin gerçek zmanlı olamayacağını, neden olamayacağınğ, nasıl hile hurda trick vs. peşinden koşmak zorunda kaldığını biliyorsun. Burdan hareketle en azından daha iyi Ambient Occlusion ile işe başlayım diyorsun, eline foto makinası alıp duvarları köşelrin resmini çekiyorsunn. Dışarı çıkıp sokakların zeminlerin resmini çekiyorsun. Daha gerçekçi bi ışık-gölge dağılımı için daha iyi yöntem peşine düşüp kodlamaya çalışıyorsun. Yaptığın şeyin sonucu gerçeğe daaha uygun bi ışıklandırma. Kurduğun altyapı da mantıklı adımlardan oluşuyorsa artık senin yapacağın bişey kalmamış oluyor. Gerisine API-donanım engeli gibi bakıyorsun. Oyuncu ise yukarda dediğim gibi iki farklı oyundaki duvar tavan köşeye bakıp, 3 kuruş fark için 2 kat ekran kartı istiyor, optimizesi kötü diye mimliyor.

    Dediğim gibi herkes haklı burda. Geliştriciyi, kötü iş yapmakla suçlamak için, yada ; kardeşim ben daha iyi Ambient Occlusion istemiyorum, daha aydınlık yerler öncelikle daha iyi gözüksün, bunlar daha çok dikkat çeker, karanlıktan çık aydınlığa bak diyebilir oyuncu arkadaş. Sadece o bakış açısından bakarsak haklı da olur. Geliştriciyi, madem API-donanım limiti var, öncelikle farkdilmesi daha zor detaylar yerine en çok dikkat çeken alanları daha iyi göstermesii peşine neden düşmediğini sorguluyabilir. Burası da yanlış sayılmaz. Geliştriciyi öncelik vermesi gerkeen, daha çok dikkat çeken kısımlara ağırlık vermediği için eleştirmiş oluruz bu durumda.

    Burda sorun, geliştricinin daha az dikkat çeken yerleri iyileştirme peşine düşmüş olması kötü optimizasyon yapıldığı anlamına gelmiyor. Herkesin işini iyi yaptığını varsayalım, yine de köşelerin gölgelerin peşine düşmek yerine daha aydınlıık kısımları daha iyi gösterebilirdi demek farklı bişey. Geliştrici kendi bakış açısına göre tercihinin gölge'den yana kullanmış olabilir. İşini iyi yaptığını varsayarsak bu optimizasyon sorunlu, özürlü diye mimlenip yuhalanmasını gerektirmez.

    İşin burdan, driver tarafına geçelim. Yukarıdaki kısım işin illaki kod kısmında bi sorun olmayabileceğini anlatmak için idi. Yani biz istediğimi kalite-perf'e sahip olmayan oyunu kötülemek için optimizasyon kelimesini laçkalaştırıp kullanabiliyoruz. Oysa prgramcının yaptığı iş ve bunun Dx >> Driver yansıması hiç de kötü olmayabilir. Böyle bi durumda driver tarafı Dx'den kendisine gelen çıktı üzerinde çok fazla iyileştirme yapamaz. Firma da driver üstünde daha fazla iyileştirme imkanı bulamayabilir.

    Yani oyunun detayları hakkında yeterince fikir sahibi değilsek, daha da kötüsü kodu elimizde yoksa (imkansız yani), oyunun gerçekten optimizasyon özürlüsü mü, yoksa tasarımı mı bi yere kadar bunlara yol açtı bilemeyiz. AMD-Nvidia ise, en azından Dx çıktısını görüp onu driverda nasıl iyileştirebilirim imkanına sahip. Ama yazdığım gibi oyuncunun beğenmediği kötü dediği işi AMD-Nvidia beğenip tamam iyi iş çıkarmışlar, fazla iyileştirilecek bi yanı yok diyebiliyor.

    Her zman bu yukarda yazdıklarım geçerli mi? Değil. Programcı iyi yoldan gitmiş ama kötü yazmış olabilir(önceliği mesela aydınlık yerlere vermiş), kötü yoldan gidip kötü kodlamış da olabilir. GPU firması bu durumda Dx >> driver çıktısına bakıp, hmm amma rezil iş çıkartmış, biz bunu adam edebilriz diyebilir.

    Yani yine senin dediğine gelmiş oldum mu? bi açıdan evet, ama bi yere kadar. Driver üstüne yapılan iyileştirme her zman oyunu vezir edemez, harika bi konuma getiremez. Programcı en başta daha iyi tasarım yapıp driver'da hiç iyileştirme yapılmasa bile, en başta kötü tasarımı olan ama driver'da deli gibi iyileştirme yapılmış oyundan daha iyi sonuç verebilir. Çünkü driverda yapacağın iyileştirme sonuçtan hareketle sağından soluntan tıkıştırıp düzeltmeyi amaçlar. En başta ana yaklaşımdaki ufak bi farklılık bile driverda yapabileceğin iyileştirmelerden çok daha fazlasını verebilir. En iyisi de iyi bi yaklaşımın iyi kodlanması ve driver üstünden donanıma kaynaklara sorunsuz dağıtılabilmesi.

    Arakatmana özel bi yük getirdiğini zannetmiyorum. Çünkü bu bahsettiğim şeyler %100 realtime olarak işlemez. Shader compiler (shader derleyicisi) oyun yüklenirken, sahne geçerken shaderlerı derler. Oyun sırasında bunlar sürekli olarak yukarıda bahsettiklerime benzer render akışı içinde yer almaz. Derlendikten sonraki hali bi nevi GPU binary'si oluyor. Yani sadece GPU'ya özel, GPU'nun anlayabileceği o GPU'da çalışabilen derlenmiş bi kod. text haldeki java kodunun (shader'ın) işletim sistemine özel Java altyapısı derlenip (shaderın compile edilip) o işletim sisteminde çalıştırılacak yapıya dönüştürülüp fiziksel olarak işlemciye yolalnması gibi (compile edilmiş shaderın GPU'ya yollanması). Java altyapısı nasıl o makinaya mimariye özel iyileştirme yapabiliyorsa ve biz JAva 'yı daha iyi hale getirirsek fiziksel mimariye özel daha iyi çıktı verebilirse, burda da driver altyapısını geliştriyoruz. Javanın text kodu compile etmesi ile çalıştırma zamanı farklı şeyler. GPU'da da compile(derleme)-execute(çalıştırma) farklı şeyler. Shader kodu bi kere derlenip hazır edildikten sonra sadece çalıştırılır (execute edilir).Derlenmiş shader kodunu GPU belleğinde tutup, şu durumda çalıştır dersen, GPU mimarisine uygun olan derlenmiş yapı çalıştırılır-işletilir. Yani realtime-gerçek zamanlı olacak kısım sadece derlenmiş shader'ın çalıştırılması-execute edilmesi sırasında olan olaylar ile alakalı. Oysa driver altyapısı istediğin kadar şişmiş büyümüş kabaarmış olsun, yapacağı şey CPU tarafında daha çok ram yemek, derleme zamanının uzamasıdır götürü olarka. Çünkü önce derleniyor, sonra GPU tarafında kullanılabilir oluyor. REaltime olarak oyun içinde derlenip kullanılmyor. Arakatman-driver altyapısının şişmesi zamanla büyümesi o yüzden çok dert değil. Kaldı ki burda öyle yüzlerce MB olmak giib bi durumdan bahsetmiyoruz. Çünkü yapılan iyileştirme sonuçtan hareketle ve belli patternlere özel olduğundan, şu tarz patern varsa şu şekilde çalıştır demek kadar az yer kaplıyor :

    işte

    rgb1 a,b,c,x
    rgb2 a,b,c,x
    .
    .
    .

    eğer rgb[z] şeklinde komut ve abcx ilavesi varsa, bunları bütünleştirerek çalıştır

    driverdaki optimizasyon bunun gibi yapılıyor. rgb şeklinde komut talebi vee buna 4 tane değişken eşlik etme durumuna bi pattern-durum-şekil deniyor. Bu tarz bi patterne sahip bütün taleplerde, gruplayarak çalıştır dediğimiz iyileştirme fayda ediyor.

    Bzim burda ilave olarak getirdiğimiz yük yukarda yazdığım şöyle komut, böyle yapı, şu şekilde değişken kullanımı varsa onları şu şekilde kullan demek.

    Dahası, önceden arakatman dili / Intermediate language ile bahsettiğim şey esas olarak bunlarla tam olarak alakalı değil. Alakalı da olabilir, sonuçta firmanın elinde ve yoktan bi komut yöntem ekleyebilrler.

    http://i328.photobucket.com/albums/l327/encia/PC_hardware/AMD_IL_APP.jpg

    O kısım bi tür programlama yapısı bunun gibi
    http://i.imgur.com/DKkrmLZ.png

    Avantajı, burda yapacağın iyileştirmeyi bütün AMD mimarileri için kullanabilirsin mesela. Eğer iyileştirmeyi bu seviyede kodlayabiliyorsan extra avantj sağlıyor, çünkü Dx'in üstünde bi katmanda yazıyor olsan da hala GPU'dan uzaksın. Ama bu 1 yerde yaz heryerde çalıştır tarzı bi imkan sağlıyor. Eğer bu arakatmanda IL seviyesinde iyileştirebilinecek ise bütün mimarilere avantaj sağlıyorsun.

    Özeti buraya kadar, işin büyük kısmı amelelik kısmı analiz etme ve oyunun dx'e yarattığı sonuçlardan bunları nasıl hızlandırabiliriz üstüne. Gerisi , arakatmanı zorlaması yük bindirmesi kalınlaştırması faln belki 0.000001 gibi bi etkisi vardır.

    Ekran kartı firmalarının oyun firmalarına yakın durma amacı, oyunun altyapısını firmadan öğrenmek. Bu sayede oyuna özel optimizasyonlu sürücü çıkartmak daha kolay oluyor yani? Ya da diğer bir deyişle AMD ve Nvidia, oyun firmalarının pisliklerini temizliyor ha bire. Öyle mi?

    Yukrıda yazdğım gibi oyun firması her zman kötü adam olmak zorunda değil. En iyi programcı bile AMD-Nvidia 'nın detayları hakkında bilemediği, firmaların açıklamadığı nasıl çalıştığını söylemediği şeyler yüzünden eksik kalabiliyor. Bunu yazar yazmaz belki kafada ee yterince detay vermeden programcının bişeyler yapmasını bekliyorlarsa o zman kötü adam GPU firması olmuyor mu? gibi ışık da yanabilir. Bu açıdan bakarsak evet, GPU firmaları da masum değil. PS4 yüzünden AMD mimarilerinin popülerlik kazanmasından dolayı bunun detaylarını araştıran inceleyenler çoğaldı. Bu tarz manyaklardan öğrendiğin detaylar, AMD'nin sana veridği detaylardan daha fazla(Nvidia'da nasıl çalıştığını hala bilmediğim şöyle detaylar var diyen ustalar da varken Nvidia'dan bahsetmedim bile). Yani GPU firmaları da masum değil, yazılım desteği veya altyapının gizli bilgi diyip verilmediği detaylar yüzünden ırtada kalanlar da oluıyor.

    Yani her zman AMD-Nvidia Oyun firmasına yaklaşmaz. Yapımcı destek almak için GPU firmasından şöyle şöyle bişey yapmak istiyorum ama sizinkinde hangi durumda kötü olmaz iyi olur içinden çıkamadım demek için gidiyor. Bu arada her iki firmaya göre de öyle böyle iyileştirme yapıyorlar. Yani öyle forumlarda faln milletin biribine laf çakmak için kullandığı bak AMD oyunu ama Nvidia geçiyor naberrrr olayları hava cıva. Öyle milletin gazladığı gibi yürümüyor işler. Hele birinin oyun programında olan bi oyuna, mesela Amd'nin programındaki bi oyuna AMD'nin canla başla bende daha iyi çalışsın diye debelendiğini düşünen varsa yannış bakıyor. Oyunda bilmemnede logo görmek, dahil olmak anlamına gelmez veya firmadan kallavi destek elıyor demek değildir. Sırf 1 satır Physx kodu kullansan bile illaki Nvidia logosunu dahil etmen gerekir mesela, sözleşme o şekilde.

    Yukarıda yazdığım gibi oyun yapımcısı her daim pislik üretir, AMD-Nvidia bunu temizler diye bi durum yok. Tersine, progrmcı düzgün bi iş yapmasına rağmen firmalar bunun suyunu çıkartmak için peşinden koşup stabilite sorunlarına bozulmalara da yol açabilir.

    İllaki prestij durumu varsa oyun yapımcısına bilmem kaç para verirler, onlar ayrı. Verilen paraya rağmen (dışarıdan ne işe yaradığını bilemediğimiz) umulan kadar perf artmayabilir. Veya rakip firmanın performansını kasıtlı düşürmek için yol yordam yöntem peşine düşülebilir. Olan şeyler bunlar. Millet nedense temiz eller gibi bakıyorda teknoloji dünyası pis işlerin döndüğü yerlerdir. Bu son paragraf, en son yazdığın ile de ilgili. Oyun temiz mantıklı yaklaşım ve iyi kodlanmış olmasına rağmen, driverdan zorlama performans kazanmak için stabilite sorunlarıan yol açabilen ilaveler değişiklikler de yapılmaya çalışılabiliyor. O fazla satılmayan, ama yukarda bahsettiğim driverdaki iyileştirmeden faydalanma durumları değişken de olsa olabiliyor. Popüler olmayan oyunlar zorlama iyileştirmeye sinekten yağ çıkartılmaya çalışılmadığında daha az sorun yaşayabiliyorlar.

    Mantle ile AMD 'nin Dx altyapısı - driverı için çabalaması farklı konular. Aslında Nvidia'nın hazır ürünler çıkartması için daha çok çabalaması gerekiyor gözüyle bakmak daha doğru. Farklı render yöntemleri geliştriip bunları paket paket şunu şu iş için kullan bunu bu iş içn kullan demesi için, bunları oluşturup geliştrip daha iyi paketler peşine düşmesi lazım. Hoş, şimdiki GW 'ye bakarsan öyle bi dünya seçenek imkan yok gibi (dışarıdan bildiğimiz). HBAO+, PCSS, furworks vs. gibi bi ton olması lazım. Bu da arge demek, vakit alıcı demek. Vakit alıcı ama her oyunun problemine yetişmek veya bak böyle eksik yapmışsınız biz düzelttik demeye göre daha az vakit alıcı. Yada zorlama optimizasyon ile sinekten yağ çıkartmaya göre.

    Mantle'ın derdi, AMD'nin zaten bölünmüş yapısı için ilave yük oluşturması. Dx-GL-CL-PS4-Xb1 için yetişmek zorunda, eski konsollardan artık bahsetmiyoruz, veya başka özel yükümlülüklerinden. Dahası, mimari anlamdada bölünmüşlük var ve keskin ayrımın olduğu yerler de var, GCN-Vliw gibi. Yani eski mimarilere göre de iyileştirme lazım, en azından düzeltme düzenleme lazım. Bunların hepsi arge insan kaynağı vakit isteyen şeyler, altından kalkması kolay değil. Üstüne Mantle ile yepyeni bişey oluşturuyorsun. Kaynak yetmiyor.

    Daha iyi driver tarafı Dx ve MAntle ile alakalı. Dx, işletim sistemi altyapısı ile de alakalı. Geçmiş geçmişte kaldı artık geleceğe bakalım tarafından bakarsak, dx12 ile daha iyi bi driver altyapısı olabilir. Mantle tarafı için ise ne kadar vakit ayırabileceklerine bağlı.
    _____________________________
    Mess With us, and you will feel
    A Pain so true yet so unreal




  • Rubisco kullanıcısına yanıt
    Mesajın tamamını henüz okudum. 16 günde değil tabi. Ancak vakit oldu.

    Parmaklarına sağlık. Çok güzel yazmışsın.

    quote:

    Yani öyle forumlarda faln milletin biribine laf çakmak için kullandığı bak AMD oyunu ama Nvidia geçiyor naberrrr olayları hava cıva. Öyle milletin gazladığı gibi yürümüyor işler.

    Burası daha bi güzeldi.



    < Bu mesaj bu kişi tarafından değiştirildi bocekgrafik -- 4 Mart 2015; 15:51:21 >




  • güzel gelişmeler oluyor bakalım
    _____________________________
  • dx12 ile beraber sli/cf sistemde vram değeri ne oldu iki katına çıktı mı?
    _____________________________
    ASROCK X870 Riptide WiFi / AMD Ryzen 9 9950X3D / MSI RTX 5090 SuprimOC / CORSAIR Dominator 32GB 7200Mhz DDR5 / CASELABS SMH10 - NZXT H5 FLOW / NZXT C1200 Black 80+ Atx 3.1 / MSI 27" MPG 274URF 0.5ms 4K 160Hz / SAMSUNG 990 Pro 2TB
    Mazda 6
  • böyle bişi varsa r9 285 f/p kralı olur.

    < Bu ileti mobil sürüm kullanılarak atıldı >
    _____________________________
    Katil Budistler, İmzamı Arakanda Ölen Müslümanların Anısına Ayırıyorum.
  • Bende bir adet hd7870 ve bir adet de r7 240(1000/975) var, dx12 oyunları gelince tek karta göre %15 daha hızlı olacağını umuyorum.(pci-e hızının x16 dan x8 - x8 e düşmesine rağmen)



    < Bu mesaj bu kişi tarafından değiştirildi Tugrul_512bit -- 18 Ekim 2015; 14:35:45 >
    _____________________________
  • 
Sayfa: önceki 12345
Sayfaya Git
Git
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.