Citat:
Nedeljko:
Pa, sad, ako tvrde da imaju real time ray tracing, a nemaju ga, to je prevara, koja bi morala da bude kažnjiva. Zna se vrlo dobro šta znači real time i šta znači ray tracing i šta znači da je to onaj video sa reklame.
Odlican, ko te ne zna pomislio bi da si ozbijan :-)
Za ljude koji nisu pratili tehnike renderovanja, glavna stvar koju su ljudi ukapirali radeci na Ray Tracing algoritmima je: slanje zraka "iz kamere" je ekvivalentno slanju zraka "ka kameri".
Kljucna razlika je sto ako saljemo zrake "iz kamere" dobijamo jako puno na brzini, zato sto bi se inace nacekali da slucajno razbacani zraci pogode svaki piksel "kamere". Ovako mi kontrolisemo zrake tako sto cemo pokriti svaki piksel kamere u prvom prolazu.
Na zalost, slanje zraka "iz kamere" otvara novi problem: Kako bi postigli ekvivalenciju ili bar uporediv rezultat sa slanjem zraka "u kameru", prilikom svakog odbijanja moramo "lansirati" novi zrak (drzimo se odbijanja, da ne komplikujemo puno). Kad taj zrak udari u nesto, lansiramo sledeci i tako dalje. Posto smo okrenuli stvari naopako, mi smo ti koji odlucujemo dokle ovaj proces moze da ide.
Pitanje je: koliko je potrebno ici u "dubinu" tj. kada je OK stopirati proces emitovanja novih zraka prilikom sudara sa objektima?
Prvih nekoliko koraka prave najvecu razliku (ko je eksperimentisao moze videti kako nastaju "mekane" senke). Posle nekog vremena uticaj na rezultat postaje zanemarljiv, ali broj moze biti prilicno rastegljiv. Kao sto se moze pretpostaviti, varijacije u "dubini" prave enormnu razliku u performansama. Za neke scene vrlo lako moze doci do eksplozije u kompleksnosti. Teski frejmovi renderovani za holivudsku produkciju bivaju generisani citav dan (!).
Tako da, "sta je ray tracing" je jasno, ali sta se smatra za prihvatljivo sto se kvaliteta tice je vrlo rastegljiv pojam.
NVIDIA koristi meru "broj zraka u sekundi". Turing (RTX) arhitektura donosi ~8x ubrzanje u odnosu na Pascal.
Quadro RTX 8000, NVIDIA tvrdi, moze da se nosi sa 10 Giga Zraka / sec. OK. Hajde da vidimo sta to znaci:
- Uzmimo 3840x2160 (4K) kao referentnu rezoluciju, 60 frejmova u sekundi
- Samo za prvi prolaz (12od kamere do prvog objekta) pricamo o 0.124 "Giga Zraka" (stagod) u sekundi
- Ovo nam daje ~0.5 "Giga Zraka" (stagod) po sekundi
- Sa RTX 8000, dakle, imamo mogucnost da "lansiramo" 20 zraka po pikselu u proseku ako zelimo da render bude u realnom vremenu
Takodje, sa ovim smo tek zagrebali povrsinu. Ray Tracing u klasicnom smislu obicno nije ono sto se zeli. Ray Tracing ne resava problem globalne iluminacije kao sto ni ne modelira razne efekte koji su primarno vezani za ponasanje fotona.
Za ovo je potrebno unaprediti RT algoritme, recimo sa mapiranjem fotona. Na zalost, mapiranje fotona zahteva nezavisne prolaze za RT kao i za izvore svetlosti (gde se "zraci" ispucavaju od izvora svetlosti). Ima i drugih popularnih algoritama, ali se svi oni zasnivaju na ispucavanju dodatnih zraka, ovog puta vezanih za izvore svetlosti.
20 sekundarnih zraka zvuci kao puno, ali zapravo nije. Ako zelimo foto-realizam, moramo ukljuciti i globalnu iluminaciju i modelirati jos fenomena.
Takodje nista nismo rekli ni o kompleksnosti same scene, optimizacijama sa "paketima" zraka i sl.
NVIDIA RTX je svakako impresivna stvar (do skoro smo pricali o nekoliko stotina miliona zraka / s kao nekom uspehu, sad pricamo o 10 milijardi zraka / s), ali to je i dalje nedovoljno za holivudski kvalitet rendera. Da stvar bude jos komplikovanija - gomila efekata koji se danas prave sa shader trikovima bi morali da se oponasaju "grubom silom" u Ray Tracing izvedbi. Samo to ce da pojede nekoliko RTX "budzeta" od 20 zraka po pikselu.
Citat:
ademare
Prvo su GPU godinama imali tzv. Fiksnu Pipeline arhitekturu . Pixel sejder , vertex sejder , Texturne jedince i ROP . Kasnije je prvi tada ATI napravio za MS X-box 360 novu arhitekturu , koncepcijski novu arhitekturu , gde umesto Pixel i Vertex shejdera , postoje samo Unified-Junifajd sejderi koji po potrebi obavljaju jednu od ove dve funkcije , njihov odnos nije fiksan kao nekada .
AMD je tu koncepciju zadrzao sve do danas u svakoj mikroarhitekturi GPU-a .
?? Sa FFP AMD ne bi mogao da podrzi bilo sta iole moderno od DX/GL/Vulkan funkcija.
FFP je "emuliran" izvrsavanjem specificnih shader programa na fleksibilnim jedinicama za racuanje. AMD to ima jos od R600.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos:
http://www.digicortex.net/node/17 Gallery:
http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! -
https://github.com/psyq321/PowerMonkey