Rykte: Nästa generations Xbox får upp till 12 TFLOPS beräkningskraft med Navi

Trädvy Permalänk
Medlem
Plats
Göteborg
Registrerad
Nov 2006
Skrivet av mackebacke:

Hej.
Hur tror ni detta står sig när dom nya konsolerna kommer, Ryzen 1800 x 1070 8 gb 16 gb ram i 1080p kvalitet ?
Kommer jag få sänka ner till low eller medium för att min pc ska palla med trycket med hyfsad fps ?

Om jag skulle göra en kvalificerad gissning så kommer vi se väldigt få spel som primärt är utvecklade för de nya konsollerna första året iaf, likt när PS4/Xbox One släpptes. Så 1070 i 1080p lär stå sig ett bra tag framöver om 60fps och konsolkvalite eller högre är ditt mål.

8700K@5G | 2080 Ti | 16GB@3200Mhz | LG 55 C7V OLED | Acer X34P
MacBook Pro 13" TouchBar 2018 | 16GB | 512GB SSD

Trädvy Permalänk
Datavetare
Plats
Stockholm
Registrerad
Jun 2011
Skrivet av Radolov:

Njae, det tillåter även en rad andra tekniker att appliceras på ett effektivare sätt. T.ex "tiled caching" spelar en roll i hur Turing exekverar ray tracing. Den tjänar möjligtvis ett syfte också för Variable Rate Shading.

Raytracing, on the other hand, is more precise because it orders the geometry of the scene and does not rule out that order as it happens with rasterization. And what about the Nvidia methodology? Well, we simply need to leave the geometry of the corresponding Tile in the L2 Cache and not discard it, this is done by placing an additional bit in each line of cache that indicates that this information is protected. And that's where the RT Cores come in, which do two things:

They generate the data structure corresponding to that part of the scene by reading from Cache L2 and writing in it.
In the hybrid rendering when the Raytracing stage arrives, it calculates recursively and continuously if a ray of the type that collides with an object, that and only that.
The RT Core does not calculate the behavior of the beam on the object, this is very important to know.

Google translateat svar, men ja, det spelar roll

Vad är originalartikeln här? Frågar då beskrivningen hur Turings RT-kärnor skulle dra nytta av "tiled rendering" via L2$ "makes zero sense". Ett av huvudproblemet med ray tracing i en GPU är att strålar som går genom intilliggande pixels på skärmen väldigt ofta är rejält inkoherenta (tar väldigt olika vägar, framförallt när det genereras sekundärstrålar). Denna inkoherent är det stora problemet då det ofta leder till låg cachelokalitet.

Draget till "tiles" så blir effekten tyvärr att strålar som startar nära ändå kommer behöva data som vid rastrering bara behövs i andra tiles än den man nu hanterar.

Stora fördelen med "tiles" är vid rendering rastrering och där kommer effekten just från betydligt bättre L2$ utnyttjande (som i sin tur är orsaken till lägre tryck på VRAM-bandbredd).

Skrivet av Radolov:

Från början så sa de:
"The driver takes care of it for you. Just render as normal."
"Yep. From your perspective we made a more efficient GPU and you don't do anything different. Might change later but no promises."

Syftet med den är att allt ska fungera automatiskt. AMD är inte dumma i huvudet, de vet att en implementation likt Mesh Shaders aldrig kommer få en spridning om inte de kör ner det i halsen på utvecklarna (well, de kan göra det på konsol, men inte på PC). Som jag minns det finns både NGG och den föregående tillgängliga. Bakåtkompabilitet är dock ett knepigt ämne rent generellt så jag undviker helst det tills jag ser vad de gjort. Lockhart har ju t.ex ingen optisk läsare, så om man förväntar sig att man ska kunna stoppa in en DVD och bara köra så har man fel.

Intelligent Workgroup Distributor, men det är egentligen bara ett finare namn för deras schemaläggare. Denna kommer tillåta att man har t.ex 6 shader engines istället för en gräns vid 4. Utöver det så kommer den ha finesser som att man kan köra wavefronts som innehåller flera olika wavefronts (om det finns plats för det, dvs).

https://cdn.wccftech.com/wp-content/uploads/2016/10/AMD-Vega-architecture.jpg
The other half of the story is that the management of the size of the waves will no longer depend on the developer is pending but the planner will crumble the Workgroup in waves of different sizes dynamically as long as the occupation of the ALUs is full . The SIMD unit can be divided into blocks of 1,2,4, 8 and 16 ALUs each and you can combine different blocks as long as they add 16. Well, one of the changes that we are going to see is that it's over for the developers break the coconut for a greater occupation of the SIMD units and this will mean a considerable increase in performance even with figures in theoretical TFLOPS very similar ... To the point where many people when you see the specifications on paper ...

... so be prepared for some disappointments. But when you see that the games look better and work better than they should do with those figures many will put you in mode ...

Because you will see the amount of TFLOPS and certain things will not match you. This also means that the new planner will not keep a program counter for the entire SIMD but will carry one for each ALU, this is the same as we have seen in Nvidia since Volta ...

Skrivet för 13 dagar sedan. Han har rätt på reaktionerna än så länge...

Är nog ingen som tror de är dumma i huvudet. Däremot får man vara medveten om att alla som jobbar på "bleeding edge" kommer ge sig in på en lång rad sidospår som man i slutändan får överge då man stöter på hinder man inte såg från början.

AMD, Nvidia, Intel och egentligen alla som jobbar med teknik på den nivån har patent på massor med idéer man i slutändan bara tar till prototypstadiet för att sedan överge. Kan ju mycket väl vara så att den "automatiska" delen visade sig stöta på patrull, i bästa fall kan man komma runt det i kisel och då kanske vi får se det i Navi. Men är knappast något man kan räkna med i detta läge.

Det sista som nämns i din "spoiler" ovan är ju vad detta patent beskriver.

reddit länk

Var också någon som gjorde en illustration av detta på Reddit

Detta är definitivt en av de idéer jag tror man fick acceptera verkade bättre på pappret än i verkligheten, i alla fall så inom de begränsningar som finns inom GCN ISA (t.ex. att en wave-front alltid är 64-trådar).

Känns mer sannolikt att detta är detta något som är möjligt när man överger GCN , men Navi ska väl vara sista GPU på GCN?

Utmaningen jag ser är: hur kan man effektivt flytta wave-fronts mellan SIMD motorer med olika bredd baserat på hur många trådar som är aktiv i en wave-front? Det är ju något som kan ändras var enda gång man har villkorad körning (vid varje "if"), register och L1$ är ju normalt bundet till "kärnan" vilket i detta fall är varje enskild "SIMD motor".

(BTW: Intels "gen" arkitektur som används i deras iGPUer har variabel ALU-beredd, även om den varierar baserat på statisk analys av vanligaste datatyp i en viss shader och inte dynamiskt baserat på antalet aktiva "stream-cores" i en wave-front).

Skrivet av Radolov:

Krävs ingen kod heller för Navi om vi ska utgå från vad de sagt om just dessa saker. Sedan så kommer ju viss kod krävas (vad jag förstår iallafall) för texel shading, eller texture space shading som det heter i Turing.

Länken du ger säger ju att "texel shading" fungerar på alla DX11 kapabla GPUer, så det lär väl(?) inte vara samma sak som texture space shading?

Från din länk
"This blog looks at an object space shading method that works on Direct3D® 11 class hardware. In particular, we’ll be looking at texture space shading, which uses the texture parameterization of the model."

Men efter att läst texten du länkar till samt det Turings white-paper säger om texture space shading låter det väldigt mycket som samma sak. AMD kallar ju det för lite olika saker, men "texture space shading" är en av namnen som nämns.

Är det inte mesh shading du tänker på? Det kräver om-design av hur GPU används och är en nyhet i Turing. Fattar lite det AMD pratade om med sin "primitive shader" påminner rätt mycket om det Nvidia kallar "mesh shading".

Om så är fallet är jag än mer övertygad om att AMD insett att om man ska få någon relevant nytta av detta kommer det krävas att spelmotorer specifikt designas för detta, eventuella vinster på "automatisk" väg via drivers och existerande spelmotorer lär bli obefintliga till minimala. AMD har väl aldrig sagt annat än att "primitive shader" finns i Vega, men det krävs stöd från utvecklare att använda?

Nvidia verkar inte ha några illusioner om att "mesh shading" kommer kunna används med mindre än att man explicit stödjer det.

är olika pipelines

Edit: ser inget i ovan som kan tänkas ge några 50 % högre IPC, inte med mindre än att man gör saker som sänker bakåtkompatibiliteten med nuvarande Xbox-generation i alla fall. Men å andra sidan är inte speciellt mycket detaljer kända om Navi och som konsolspelare har jag mer än gärna fel här

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Trädvy Permalänk
Medlem
Registrerad
Dec 2008

@Teval: Tack för svaret, jo personligen vill jag upp på minst 60 helst runt 80 fps även sen, men som idag på ultra inställningar i BF5
Så ligger jag på 80 - 120 fps men kör dock en äldre 1050-1680 upplösning skärm idag i 120 hz men ska kanske uppgradera skärmen till 1080p sen hade jag tänkt. Men exakt vad innebär konsollkvalitet som du skrev, är det typ medium om man jämför det till en pc eller svårt att ge exakt svar kanske ?

Trädvy Permalänk
Forumledare
Kent
Registrerad
Jan 2005

*Tråd rensad (otrevligheter)*

Synpunkter eller frågor gällande modereringen? Då kan du kontakta mig eller moderatorerna.
Ursäkta min stavning, jag är dansk

Trädvy Permalänk
Medlem
Registrerad
Mar 2017
Skrivet av Yoshman:

Vad är originalartikeln här? Frågar då beskrivningen hur Turings RT-kärnor skulle dra nytta av "tiled rendering" via L2$ "makes zero sense".

Jag tror han menar att då Tiled rendering lagrar en lista med all geometri i "tile:n" (sett från kameran!) så kan man även lagra geometrin som RT-cores söker fram i samma lista , givet att den skyddas. På så sätt bibehålls ordningen (primary hit, secondary hit, osv osv), på geometrin även om den inte är rakt framför kameran. På så sätt kan man med enkelhet gå igenom all geometri när man kommer till shading stadiet. Tänker mig något i stil med (triangel_framför_kameran, triangel_från_bounce_1 , triangel_från_bounce_2 osv). Jag kan dock ha missförstått vad han menade, då det är en rätt så lång artikel som är översatt med google translate.

Jag tänker inte dela var jag hittade artikeln, men den kommer från en blogg som jag hittade när jag sökte efter vad några Navi instruktioner gjorde (ja, den hade svaren på det). Bloggen tillhör en spelutvecklare och fokuserar för det mesta på grafik, hårdvara och konsoler. Men det finns vissa saker där som möjligtvis skulle kunna skada personen om informationen blev spridd (b.la nämns specs i PS5:ans devbuild vid olika tillfällen, som jag är hyyyfsat säker på inte är meningen ska spridas. Även om de inte kommer från just hans devkit). Iallafall, han bryter ner allt från konsoler till rykten, och då han jobbar med grafik så skulle jag säga att informationen är hyfsat korrekt.

Skrivet av Yoshman:

Ett av huvudproblemet med ray tracing i en GPU är att strålar som går genom intilliggande pixels på skärmen väldigt ofta är rejält inkoherenta (tar väldigt olika vägar, framförallt när det genereras sekundärstrålar). Denna inkoherent är det stora problemet då det ofta leder till låg cachelokalitet.

Draget till "tiles" så blir effekten tyvärr att strålar som startar nära ändå kommer behöva data som vid rastrering bara behövs i andra tiles än den man nu hanterar.

Stora fördelen med "tiles" är vid rendering och där kommer effekten just från betydligt bättre L2$ utnyttjande (som i sin tur är orsaken till lägre tryck på VRAM-bandbredd).

Incoherent rays är ett problem som hör till BVH traversal. Det artikelförfattaren talar om är var slutresultatet som fås lagras.

Skrivet av Yoshman:

Är nog ingen som tror de är dumma i huvudet. Däremot får man vara medveten om att alla som jobbar på "bleeding edge" kommer ge sig in på en lång rad sidospår som man i slutändan får överge då man stöter på hinder man inte såg från början.

AMD, Nvidia, Intel och egentligen alla som jobbar med teknik på den nivån har patent på massor med idéer man i slutändan bara tar till prototypstadiet för att sedan överge. Kan ju mycket väl vara så att den "automatiska" delen visade sig stöta på patrull, i bästa fall kan man komma runt det i kisel och då kanske vi får se det i Navi. Men är knappast något man kan räkna med i detta läge.

Det sista som nämns i din "spoiler" ovan är ju vad detta patent beskriver.

Var också någon som gjorde en illustration av detta på Reddit

Detta är definitivt en av de idéer jag tror man fick acceptera verkade bättre på pappret än i verkligheten, i alla fall så inom de begränsningar som finns inom GCN ISA (t.ex. att en wave-front alltid är 64-trådar).

Känns mer sannolikt att detta är detta något som är möjligt när man överger GCN , men Navi ska väl vara sista GPU på GCN?

Ja, det är det patentet. Han säger dock att det aldrig kom med (en hyfsat lång historia om saker och ting som måste höra ihop med andra patent och saker i Vega som aldrig blev till etc etc.). Planen ändrades för Vega (dvs, implementera inte NGG fast path alls!) , men kan vara fullt möjlig att implementera till Navi.

Det kan ligga något i det som du säger att de måste överge GCN för att få det att fungera bra. Han nämnde att ursprungsplanen för Navi var att släppas 2018 på 7nm noden från Global Foundries (och vi vet hur den historien slutade). Istället bad konsoltillverkarna om att accelerera utvecklingen varpå vad som ursprungligen var Navi blev next-gen. Det verkar som planerna ändrades helt enkelt, speciellt när vad som skulle behövas för ray tracing troligen fanns i next-gen.

Skrivet av Yoshman:

Länken du ger säger ju att "texel shading" fungerar på alla DX11 kapabla GPUer, så det lär väl(?) inte vara samma sak som texture space shading?

Från din länk
"This blog looks at an object space shading method that works on Direct3D® 11 class hardware. In particular, we’ll be looking at texture space shading, which uses the texture parameterization of the model."

Men efter att läst texten du länkar till samt det Turings white-paper säger om texture space shading låter det väldigt mycket som samma sak. AMD kallar ju det för lite olika saker, men "texture space shading" är en av namnen som nämns.

Är det inte mesh shading du tänker på? Det kräver om-design av hur GPU används och är en nyhet i Turing. Fattar lite det AMD pratade om med sin "primitive shader" påminner rätt mycket om det Nvidia kallar "mesh shading".

Om så är fallet är jag än mer övertygad om att AMD insett att om man ska få någon relevant nytta av detta kommer det krävas att spelmotorer specifikt designas för detta, eventuella vinster på "automatisk" väg via drivers och existerande spelmotorer lär bli obefintliga till minimala. AMD har väl aldrig sagt annat än att "primitive shader" finns i Vega, men det krävs stöd från utvecklare att använda?

Nvidia verkar inte ha några illusioner om att "mesh shading" kommer kunna används med mindre än att man explicit stödjer det.

Han säger att det är samma sak, men att det kommer andra saker som hör ihop med ett annat patent som gör det ännu effektivare. Kort sagt, all geometri beräknas exakt en gång för en ruta. Rutan dupliceras och förskjuts. M.h.a texel shading så kan man se till att använda värden som räknats ut för ena bilden kan användas för den nya bilden, vilket förstås leder till stora prestandaförbättringar.
Saxat från hans inlägg (jag har skippat en del):

It's a very, very simple idea that can be done nowadays with the Geometry Shaders or the Compute Shaders in the same stage but with a fixed function unit it is much better and it allows us to use the power of the shaders for other things besides to be automated prevents developers from breaking the horns having to make VR versions of the games and thus allowing all entry games or a majority to be VR Ready.

Combined with the Texel Shading / Texture Space Shading we have achieved through these techniques an incredible performance increase in the scenes for VR.

Stereo rendering + Texel shading/texture space shading

Kollade för länge sedan på mesh shaders och då såg det ut som att det ändå krävs en del kod/tänkande. Och med tanke på att det finns 0 spel som implementerar det efter 5 månader kan det ligga något i det. Personligen hade jag hellre sett detta än DLSS för de partnertitlarna NVIDIA har.
"This example is just a straight-forward implementation. Due to all data fetching being done by the developer, custom encodings, decompression via subgroup intrinsics or shared memory, or temporarly using the vertex outputs are possible to save additional bandwidth."

Primitve shader och Mesh shader är i princip samma sak, iallafall från vad jag hört. Mike Mantor hade en rätt så bra genomgång av vad primitive shaders gör.

Konceptet har inte övergetts, får aldrig stöd till Vega , och ursprungsidén är fortfarande möjlig till Navi p.g.a att Vega saknade de nödvändiga delarna att genomföra det. Tror de vill undvika det som hände med "Rapid Packed Math" som användes i två spel när AMD implementerade det själva för Vega. Vi får se hur den är implementerad när den släpps helt enkelt.

Skrivet av Yoshman:

Edit: ser inget i ovan som kan tänkas ge några 50 % högre IPC, inte med mindre än att man gör saker som sänker bakåtkompatibiliteten med nuvarande Xbox-generation i alla fall. Men å andra sidan är inte speciellt mycket detaljer kända om Navi och som konsolspelare har jag mer än gärna fel här

Tror en del av de stora hoppen kom när de gick över till att implementera next-gen. Super-simd är b.la en kandidat. Han är inte säker på att kompabilitet bibehålls till Lockhart (den har ju ingen läsare från första början...).

Trädvy Permalänk
Medlem
Plats
Göteborg
Registrerad
Nov 2006
Skrivet av mackebacke:

@Teval: Tack för svaret, jo personligen vill jag upp på minst 60 helst runt 80 fps även sen, men som idag på ultra inställningar i BF5
Så ligger jag på 80 - 120 fps men kör dock en äldre 1050-1680 upplösning skärm idag i 120 hz men ska kanske uppgradera skärmen till 1080p sen hade jag tänkt. Men exakt vad innebär konsollkvalitet som du skrev, är det typ medium om man jämför det till en pc eller svårt att ge exakt svar kanske ?

Konsolkvalite varierar ju lite från spel till spel, men Xbox One X brukar ligga på High inställningarna på PC i de flesta spel.

8700K@5G | 2080 Ti | 16GB@3200Mhz | LG 55 C7V OLED | Acer X34P
MacBook Pro 13" TouchBar 2018 | 16GB | 512GB SSD