Nej jag har kört AMD's ProRender bara. Som sagt, jag är gammal, så den där tiden när man testade allt nytt som kom är över för min del, och med 3D är det ju alltid en balans mellan kreativitet och teknik, och för mig har det förstnämnda fått ta över.
Ok. Förståeligt. Hur försäkrar man då sig att man aldrig hamnar i ett läge där ens information är föråldrad?
Men som sagt, för att utnyttja grafikkorten till fullo måste man komma åt så mycket av prestandan som möjligt, och då är proprietär teknik det enda som gäller.
Men få är ju så benägna att hoppa på nya tekniker som människor som håller på med 3D, så om någon släpper en GPU renderare som funkar med både AMD och Nvidia så kommer dom hoppa dit. Var så säker.
Men det här är också en bransch/marknad där vinnaren tar allt.
Jag menar, man kan förkompilera saker genom t.ex shader intrinsics eller gameworks (för att nämna några vanliga exempel), men det är ungefär där det slutar. Det finns inget som säger att dessa saker inte skulle kunna göras utan cuda eller vad AMD nu använder (GCN ISA?) (finns exempel på shader intrinsics i DX11, DX12, Vulkan spel. Likaså vet jag att gameworks finns för DX11 såsom DX12 spel). Du återfinner NVIDIAs och AMDs "proprietära" lösningar även under DXR och DirectML, mer eller mindre utan noterbar prestandapåverkan.
Men hur blir det med programmeringsspråken själva? De måste alltid ha något slags prestandaövertag i proprietära språk, väl? Då får man undersöka rapporter lite som jämför dessa. Har inte lagt supermycket tid på det här, men undersökte de resultat som fanns högst upp om man sökte på t.ex google scholar. Sökorden var "cuda vulkan performance" och "HIP amd performance".
Så visst kan det vara så att det finns andra saker som fungerar bra på båda, och det finns ingenting som säger att proprietärt måste vara bättre. Jag kan nämna att intresset för Vulkan finns även hos forskarna. Talade med en HPC forskare på grafikkort på KTH för något år sedan, och han sa "Have you guys heard about Vulkan!?" och var jätteintresserad av det. Han var även en forskare som forskar med just Volta GPU:er och skriver det mesta idag i cuda, även i kurser som ges handlar enbart om cuda eller OGL.
Sedan så tycker jag det inte verkar som om de som släpper GPU renderare är de som är först ut eller villigast att släppa mjukvara som fungerar för båda. Varför? Om nu de har CUDA renderare så kan ~99,6% av koden omvandlas till HIP och så kan de även släppa en version som fungerar på AMDs eller NVIDIAs grafikkort. Men de är inte villiga att lägga in 0,04% av arbetet på att få det att fungera. Faktum är att jag skulle tro att AMD skulle göra denna 0,04% av arbetet helt gratis, då de räknar med att det är mjukvaran som säljer hårdvaran. ~0 investering av företagen alltså. Alternativt så skulle de kunna byta till Vulkan , men det är ett 1000 gånger större projekt.
Vilket leder tillbaka till lite det som tråden handlar om. NVIDIA har varit framgångsrika och byggt upp ett hyfsat enkelt och välspridd språk, i synnerhet om du ser på akademiska rapporter. Dessa har även avtal med universiteten och den akademiska världen. Intel har lika stor spridning de också, fast på CPU fronten. Pröva sök efter "ray tracing" och kolla från ~2007 och framåt. Är det en CPU så är det Intel, är det en GPU så är det skrivet i CUDA. Att hitta något från AMD är som att hitta en nål i en höstack (hur mycket minne har en sån stack?). Man kan till och med hitta en hel del saker om Larrabee där, oftare än vad jag hittar hårdvara från AMD.
Du har dock rätt i en sak, det är vinnaren som tar allt. Och jag skulle säga att NVIDIA och Intel är de stora vinnarna med de redan etablerade plattformarna. AMD behöver göra en stor comeback för att de ska ha en chans. När jag ser vad de kommit fram till på hårdvarusidan, så kan de ha en öppning relativt snart. Lyckas de och Intel, så kan det bli så att det är NVIDIA som blir de stora förlorarna.
Jag måste bara fråga, alla ni som förordar öppna standarder, har ni kört AMD eller Intel som processor dom senaste 10 åren? Innan Ryzen.
Ni vill ju ha det snabbaste, idag är Nvidia snabbast, inom 3D (och då menar jag skapandet av 3D, inklusive alla spel ni spelar) är Nvidia Intel, och AMD är..ja, AMD (Athlon).
Jag förordar öppna standarder , iallafall om man menar kod som kan köra på allt. Det är nödvändigtvis inte så att samma kod körs på allting, men att alla ska få tillgång till att kunna accelerera det på det sätt som passar hårdvaran bäst. Detta är exempelvis vad som sker i DirectML eller DXR. Jag hade en i5 750 sedan 2009 och bytte till en 1700x 2017. Dessförinnan tror jag att jag körde en athlon? Kommer inte riktigt ihåg, det var inget jag noterade på den tiden.
Jag vill inte heller ha de snabbaste, jag vill ha det snabbaste för ett viss kostnad till en viss arbetsbörda. Om det är NVIDIA, AMD eller Intel som erbjuder detta spelar egentligen inte så stor roll.