Home » Grafikkort » Ray Tracing i realtid
Ray Tracing i realtid

Ray Tracing i realtid

Share
DXR, WTF

Nu nærmer vi os bakketoppen, og snart trimler vi ned ad den anden side i en bunke af reflekterende og smukt belyst realisme takket være kombinationen af Nvidias nye RTX-teknologi, Microsofts nye understøttelse af ray tracing i DirectX 12 og fremkomsten af ray tracing-support til populære renderings-engines. Før vi udforsker det, vi har set, og forklarer, hvorfor det er for tidligt at blive alt for begejstret, skal vi se på, hvordan DirectX Raytracing (ofte kaldet DXR) håndterer ray tracing.

DXR ændrer ikke totalt den måde, hvorpå billeder bliver renderet. Den bruger på snedig vis en række ressourcer, som Direct X allerede arbejder med, og giver ray tracing-engines mulighed for nemt at koble sig på dem. Teksturer, buffere og konstanter bliver alle delt mellem ray tracing-pipelinen og andre renderingsoverførsler. Der kræves ingen konvertering mellem dem, og samtidig er shadere og gpu-synkroniseringsopgaver åbne og applikationsstyrede, hvilket giver en effektiv balance mellem renderingsskønhed og ydelse.

Microsofts PIX-tuningværktøj omfatter allerede support til DXR-ray tracing.

DXR’s ray tracing-pipeline bruger de samme kommandolister og køer som resten af dens renderingsopgaver, og det betyder, at det ikke kræver en total omskrivning at overføre renderingsprogrammer til ray tracing. Og den afsender sine job i grids og udnytter mest muligt de parallelle beregningsevner hos gpu’er.

Der finder stadig lidt snyd sted, men det er primært logisk; DXR gør nye objekter tilgængelige for renderings-pipelinen. Det gælder for eksempel accelerations-strukturer, der er med til hurtigt at finde mellemled, og shadertabeller, der hurtigt definerer forholdet mellem overflader og lys. Det reducerer den mængde direkte computerarbejde, der kræves til hver frame.

Ray tracings forbrugerrødder rækker helt tilbage til Commodore Amigas Sculpt 3D og videre endnu.

Den potentielle mængde af computerarbejde er teoretisk set blevet reduceret, men ray tracing – selv under DXR – er afhængig af umiddelbar adgang til information. I dette tilfælde indfører DXR såkaldte “state objects”, der kompilerer hver enkelt shader i hvert enkelt objekt, der kan tænkes at blive ramt af en stråle, og definerer mellemleddene og relationerne imellem dem. Og så er det hele parat til at blive eksekveret på et øjeblik.

Se også:  Et spil om sikkerhed

Forskellige scener kan have flere state objects, og det lægger en tung byrde på grafik-ram og stiller store krav til gpu’ens evne til at bearbejde det, der skal kunne ses i en scene. Og Nvidias RTX-bibliotek, der kører mellem DXR og dens Volta-arkitektur, ser ud til at kunne håndtere det.

Masser af volt

Titan V kommer nok ikke til at bringe ray tracing til de brede masser.

Nvidias Volta-udgaver af 12 nm-gpu’er er utrolig sjældne i øjeblikket. De eksisterer kun i de professionelle Tesla V100 og i Titan V. De kom henholdsvis i midten af 2017 og i december 2017. Her har vi den første barriere for at komme i gang med ray tracing: Volta er meget kostbar, og hvis kryptomarkedet har noget at skulle have sagt, bliver selv de specialiserede kort meget dyre.

Se også:  Spil i skyen på en ny måde

Voltas arkitektur har en række forbedringer bortset fra gpu-kernens komprimerede layout. Det gør den meget egnet til ray tracing i realtid. For det første er tensorkernerne specifikt egnede til at bearbejde tensorer – det vil sige funktioner af et områdes koordinater. Du har måske tidligere hørt om tensorer takket være Googles Tensorflow-maskinindlærings-algoritme.

I forbindelse med ray tracing bliver de brugt til at pifte AI op til at drive Optix’ støjfjernende algoritme. Den udnytter kernernes enestående egenskaber, der håndterer FP16/FP32-beregninger til intelligent at afsløre fejlplacerede stråler i en scene med flere dimensioner. Forbedringerne i Volta stopper ikke her.

En anselig mængde hukommelse med stor båndbredde i form af mindst 12 GB gddr5X og med en båndbredde på 652,8 GB/sek. gør det til en smal sag at kaste rundt med de relevante ray tracing- datastrukturer og gøre dem tilgængelige for de rutiner, der har brug for dem.

Den naturlige stigning i kerner og transistorer, der hidrører fra et spring i produktionsprocessen – Titan V håndterer 21,1 milliarder transistorer og seks grafikclusters med 5120 CUDA-kerner – indebærer en enorm stigning i ydelse. Et enkelt Titan V kan levere 110 teraflops kraft i forhold til Titan XP’s 12 teraflops. Og det foregår med et energiforbrug på det halve.

TAGS
Gaming
grafik
Ray Tracing

DEL DENNE
Share


Mest populære
Populære
Nyeste
Tags

Find os på de sociale medier

Modtag dagligt IT-nyhedsbrev

Få gratis tech-nyheder i din mail-indbakke alle hverdage. Læs mere om IT-UPDATE her

Find os på FaceBook

Alt om DATA

Lautrupsgade 7,
DK-2100 København Ø
Telefon: 33 91 28 33
redaktion@altomdata.dk

Datatid TechLife

Lautrupsgade 7,
DK-2100 København Ø
Telefon: 33 91 28 33
redaktion@datatid.dk

Audio Media A/S

CVR nr. 16315648,
Lautrupsgade 7,
DK-2100 København Ø
Telefon: 33 91 28 33
info@audio.dk
Annoncesalg / Prislister:
Lars Bo Jensen: lbj@audio.dk Telefon: 40 80 44 53
Annoncer: Medieinformation


Alt om DATA, Datatid TechLife  © 2019
Privatlivspolitik og cookie information - Audio Media A/S