Har nVidia RTX slagit ut AMD o Intel?!

Permalänk
Medlem

Det var ju konstigt tjat om AMD's drivrutiner och allmänt krångel. Har själv ägt, eller äger, like många AMD som nVidia kort, och de är ungefär likvärdiga när det gäller drivrutiner och hårdvara. Har en 960 nu, hade problem med en Radeon 270 som i efterhand nog var user error men jag orkade inte lalla och hade inte haft nVidia sen 7600 GT eller vad det nu var.

Har läst om problem med bådas drivrutiner under åren på tex. reddit, och undrat varför jag skulle vara undantaget.

Sen att AMD skulle vara törstigare, låta värre eller gå varmare. Eh. Har inte brytt mig nog för att titta på det mer noggrant, men ljudmässigt är det tillräckligt nära att jag inte hört någon skillnad.

Något år sen var det ju AMD som drog mindre ström osv. men nu verkar det som AMD alltid varit sämre på detta. Memes på AMD som en jet motor ljudmässigt, men jag kommer ihåg nån youtube video där samma kunde sägas om nVidia, men det verkar ha glömts bort, eller något med envist coil whine på nån NV modell. Sen var ju NV marknadsledande med BSOD's på Vista, glöms det bort för att Vista sög?

nVidia verkar väldigt ivriga om att vid varenda tillfälle låsa in användaren i deras ekosystem, inte olikt Apple.

Permalänk
Datavetare
Skrivet av DasIch:

Det vore mer korrekt att säga att AMD har en hybrid-renderare, vilket i sig inte är något unikt - det finns flera olika varianter på det (MentalRay, V-Ray och Renderman t.ex.). Skillnaderna ligger i hur teknikerna implementerats. Där har nVidia kommit långt med att erbjuda specifikt hårdvarustöd.

Håller helt med.

Skrivet av DasIch:

RT-cores är förmodligen en specialiserad variant av Tensor-cores.

SM
Motsvarar CU på AMD. Intels GPU fungerar lite annorlunda och är lite mer lik en "vanlig" CPU vilket nog förklarar varför den är så väldigt bra på GPGPU i förhållande till hur den står sig i ren grafik kontra AMD/Nvidia.

Kan göra en rad olika operationer, både heltal och flyttal. Den fundamentala begränsningen är ändå att det handlar om vad Nvidia kallar SIMT (Single Instruction Multiple Threads) vilket är en marginellt generaliserad variant av SIMD på CPU (och med AVX512 så är den skillnaden i praktiken helt borta).

För att en SM ska vara effektiv måste man ha dataparallella problem med en teoretisk parallellism klart över bredden på en "wave-front". Alla trådar i en wave-front måste köra samma instruktion alt. göra ingenting den cykeln.

Specifikt relaterat till matriser: en SM kan väldigt effektivt hantera en full wave-front (32 på Nvidia, 64 på AMD och variabelt på Intel men optimalt är typiskt 8-16) av matriser. D.v.s. man kan effektivt t.ex. multiplicera 32 matriser parallellt, inte alls i närheten lika effektivt att hantera en 32x32 matris!

Tensor-core

Insåg först inte exakt hur dessa fungerade mer än att de hanterar R = A * B + C där alla element är 4x4 matriser. A
och B är alltid 16-bit flyttal medan R och C kan vara 16- eller 32-bitar.

Det jag inte var helt säker på initialt var hur många sådana operationer som utförs på "bredden", men hittat information om att det är samma bredd som en SM. D.v.s. en tensor-core kan utföra upp till 32 st sådana operationer vilket är orsaken till den brutala flyttalsprestandan man får (varje "CUDA-core" i en tensor-core utför 128 FLOPS per cykel så totalt 32*128 = 4096 FLOPS per tensor-core och cykel!!!).

Grejen här är att man "bara" kan utföra just R = A * B + C. Vilket inte så bara då större matriser kan rekursivt brytas ned i mindre matriser och väldigt mycket kan beskrivas med matrisoperationer. Men ändå rätt mycket mer begränsat i funktioner jämfört med en SM och handlar fortfarande om data-parallellism då alla 32 "lanes" i en tensor-core måste användas för att det ska vara riktigt effektivt -> man måste ha ett problem där det fungerar bra att göra samma operation på >= 32 parallella storheter.

RT-core

Dessa lära också tugga 4x4 matriser som bara den, detta då 4x4 matriser är precis vad man använder för att beskriva koordinater i en 3D värld.

Men till skillnad från det SM/Tensor-cores är brutala på så kommer normalt strålföljning leda till strålar genom olika pixels kommer träffa olika ytor och därmed kräva olika behandling. Fortfarande ett brutalt parallellt problem, men det är primärt uppgiftsparallellt (olika strålar kan beräknas helt oberoende av andra, men uppsättningen instruktioner som ska appliceras kan skilja mellan strålar, även de strålar som ligger väldigt nära varandra).

Lite samma sak gäller fysik. Går definitivt att köra fysik på en GPU, men GPUn är inte sällan supereffekt på detta då olika kroppar kommer kräva olika instruktioner för sin beräkning. Vad man vill ha då är acceleration per beräkning, något som är lite lurigare på en GPU och något som passar SIMD på en CPU väsentligt bättre då dessa även kan användas på "andra" ledden. D.v.s i stället för att beräkna 4 olika matriser parallellt med SSE kan man ju hantera 4 olika rader/kolumner per "lane" i SSE -> man accelererar fallet att hantera en enda matris (olika beräkningar kan sedan hanteras av olika CPU-trådar då dess kan hantera uppgiftsparallellism).

Så strålföljning har ett visst mått av dataparallellism, men det är primärt uppgiftsparallellt -> inte optimalt att hantera med en traditionell GPU. Lite bättre att hantera på tensor-cores, men där tror jag begränsningen på 16-bitar för A och B matriser är ett problem (det är en ren feature för maskininlärning av lite olika skäl).

Skrivet av DasIch:

Neurala nätverk och strålspårning kan båda köras som rekursiva matriser, och Tensor-cores jobbar just med multiply-accumulate operationer på matriser. Jag är ingen datavetare så min förståelse för det är inte särskilt djup, men det förefaller i varje fall som att båda processerna kan accelereras med snarlika operationer.

Well, egentligen läste jag kemiteknik, så är rent krasst inte en datorvetare i akademisk mening... Läste i.o.f.s. datateknik parallellt på 50 % under en tid, men det var mest då ursprungsplanen var att forska inom kvantkemi där man använder massor med matriser, massor med datorkraft och en hel del 3D-grafik (men IT-boomen hände och planer ändrades, jobbat med OS och multicore programmering >15 år nu...).

Båda kan hanteras rekursivt och beskrivas med matriser, men se ovan för skillnad i typ av parallellism

Skrivet av DasIch:

En annan sak som är oerhört viktig för Turing är just AI;n. Den gör det möjligt att utföra färre beräkningar men ändå få en ren bild utan flimmer. Utan den delen hade det inte blivit någon Turing.

Håller helt med. Ska bli riktigt spännande att se hur bra/dåligt MLSS kommer fungera i praktiken. Jag tror på denna teknik, om men människa kan inse vad som fattas i en bild som är uppskalad kan även en dator bli tränad att lura ut det. När datorn väl lurat ut det ser jag inte varför man inte kan lära den att fixa till bilden -> exakt vad MLSS gör i teorin.

Lär nog ändå ta ett bar vändor innan MLSS trimmats in ordentligt.

Visa signatur

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

Permalänk
Moderator
Testpilot
Skrivet av Yoshman:

Även om RT-cores "bara" är en ASIC (vilket rent krasst kan sägas för allt i en GPU) så finns några rätt starka kort i den hand Nvidia just nu sitter med

  • efter lite grävande hittade jag ett patent (edit: lyckades länka fel patent, här är rätt samt en rad andra som jag också hittat från Nvidia) på den grundläggande tekniken i RT-core, det betyder att AMD och Intel endera måste licensiera tekniken (inte alls säker att Nvidia är intresserad av det) alt. måste man hitta en annan metod som även den kan implementeras effektivt i HW

  • RT-cores är ett rätt stort avsteg från vad en GPU tidigare kunnat hantera med stor effektivitet. GPUer har tidigare "bara" kunna hanterat data-parallella problem med riktigt hög effektivitet (gäller även tensor-cores).
    RT-cores hanterar i.o.f.s. ett extremt specifikt problem, men det är ett uppgiftsparallellt problem, inte ett data-parallellt problem, något som kräver en rätt rejält annorlunda HW-design mot andra delar i en GPU!

  • utanför spel befäster CUDA sig allt mer som APIet med stort "A" för GPGPU-programmering, under senaste året pågick ett diskussion kring om man överhuvudtaget skulle fortsätta utveckla OpenCL eller om det skulle gå upp i Vulkan på något sätt. En diskussion som knappast stärker OpenCL som relevant API för datacenter...
    Nu har man ändå bestämt sig att man ska fortsätta med OpenCL (fanns flera fall som är vettiga för OpenCL men helt irrelevanta för Vulkan). På sikt kan SyCL bli en verklig konkurrent till CUDA, men det är fortfarande rätt mycket "work-in-progress"

Förhoppningsvis sitter konkurrenterna med teknik som kan utmana Nvidia, men det är inte alls något som känns som speciellt bombsäkert (i alla fall inte i närtid).

Jag har inte mycket att säga angående patenten men om historien skall upprepa sig så har jag en känsla av att AMD kan komma på ett sätt att kringå detta med mycket snarlik teknik.

Det är ju intressant att se hur dessa "RT-cores" är uppbyggda mer i detalj. Är det smått modifierade Tensor Cores eller är det en helt egen "genre" av beräkningshårdvara.

Om inte AMD har varit sinnessjukt förutseende så lär väl Navi inte innehålla mer än mjukvarustöd för Ray Tracing och det är ju väldigt osannolikt att de kan kontra med någon liknande hårdvarustöd för tekniken. Speciellt kombinationen av "vanliga" SM, Tensor och RT.

Skrivet av DasIch:

Det vore mer korrekt att säga att AMD har en hybrid-renderare, vilket i sig inte är något unikt - det finns flera olika varianter på det (MentalRay, V-Ray och Renderman t.ex.). Skillnaderna ligger i hur teknikerna implementerats. Där har nVidia kommit långt med att erbjuda specifikt hårdvarustöd.

RT-cores är förmodligen en specialiserad variant av Tensor-cores. Neurala nätverk och strålspårning kan båda köras som rekursiva matriser, och Tensor-cores jobbar just med multiply-accumulate operationer på matriser. Jag är ingen datavetare så min förståelse för det är inte särskilt djup, men det förefaller i varje fall som att båda processerna kan accelereras med snarlika operationer.

En annan sak som är oerhört viktig för Turing är just AI;n. Den gör det möjligt att utföra färre beräkningar men ändå få en ren bild utan flimmer. Utan den delen hade det inte blivit någon Turing.

Om jag förstått den knapphändiga informationen som finns angående Nvidias Ray Tracing-teknik så är RTX också en hybridrenderare med just AI elementet som du nämnt ovan. Nyttjandet av Tensor i kombination med RT gör att tekniken tagit det där extra klivet.

Vad jag försöker få fram är att jag tror AMD kan skapa liknande lösningar eftersom Ray Tracing inte är något nytt för dom heller så att säga. Sen lär det inte komma med Navi.

Skrivet av Sveklockarn:

Jag tycker att AMDs rykte är välförtjänt i förhållande till det antal supporttimmar jag personligen fått lägga på ATI/AMD-GPUer genom åren jämfört med Nvidia. Jag kan ju såklart bara ha haft en extrem tur att råkat ha fått ihop alla stationära Nvidia-baserade system på första försöket utan några särskilda procedurer, medan AMD (och framförallt ATI!) krävt massa manuella ingrepp i systemet både för och efter installation.

Det är också stor skillnad i attityd mellan användarna. Att behöva hacka registret för att alla Windows-menyer blev vita efter drivrutinsuppdatering är tydligen "helt normalt" för somliga, medan det för andra är ett tydligt tecken på att drivrutinerna är ett brinnande skeppsvrak av papper som försöker navigera i en ocean av petroleum utrustat med brandsläckare fyllda av napalm med vit fosfor.

Om vi ska ägna oss åt anekdotala undersökningar så kan jag flika in att jag har haft följande kort;

3DFX Voodoo 2 16MB
Nvidia GeForce 2 GTS 32MB
ATi 9700 Pro
ATi Radeon X800 PRO AGP
ATi Radeon X1950 PRO
ATi HD 4850
Nvidia GeForce 9800 GTX
ATi HD 4890
Nvidia GeForce GTX 460
Nvidia GeForce GTX 970
AMD Radeon R9 290X
Nvidia GeForce GTX 980 Ti (Nuvarande)

Jag har haft mina problem genom åren men för mig är det ingen tillverkare som sticker ut. Mitt nuvarande 980 Ti fick jag köra en rollback på drivrutinerna för jag fick problem med dubbla skärmar ett tag. Löste sig så småningom i en ny drivrutinsuppdatering. Minns inte såklart alla problem jag har haft men för mig sticker inte AMD ut mer än Nvidia.

Däremot så har Nvidia tydligt dragit ifrån i modern tid med nya funktioner som Ansel och GeForce Experience samt att de brukar vara lite snabbare med drivrutinsstöd i nyare spel. AMD hänger ju ofta på rätt bra men Nvidia tenderar att vara steget före. Vilket inte är så märkligt med tanke på resursskillnaderna i företagen.

Jag är säkert naiv men jag hoppas innerligt att AMD kan göra en "Ryzen" även på GPU-fronten och återhämta sitt anseende och prestanda. Den utvecklingen som jag vittnar om nu är bara sorglig och kommer leda till dyrare och mindre prestandaskillnad generation för generation. Vi har redan gått igenom detta med Intel.

Visa signatur

ASrock x470 Taichi Ultimate - AMD Ryzen R9 3900x - G.Skill Ripjaws@3.6GHz 16GB RAM - RTX 3080 Ti - Super Flower Leadex Gold 1000W - Phanteks Enthoo Pro - AOC AG35UCG 34" 3440x1440p@100Hz - kalaset vattenkylt

Permalänk

Tror det beror på hur lätt det är för programmerare att implementera, så det inte blir för mycket extrajobb för en studio som inte är sponsrade av Nvidia.

Permalänk
Medlem

tl;dr

Fråga dig själv:
Vad är "realtids raytracing", nVidia-korten lär ju ha begränsningar. Så fort man flyttat tröskeln lite längre fram, så kan man flytta den ännu längre fram, så har det sett ut i över 25 år vad gäller mjukvaru, icke-realtids raytracing.

AMD har inte motsvarande kort i handeln nej, ser det ut som att de KAN och VILL satsa hårt på spelmarknaden för grafikkort?

Som jag sagt tidigare, det kommer att ta TID innan NÅGRA spelutvecklare satsar på detta, så du kan glömma att sitta på 200 spel om tre-fyra månader som har fantastisk nvidia-raytracad grafik i 144 fps.

Och sen så är det monopolfrågan, VILL du att nVidia ska vara din enda leverantör för grafikkort?

(brb, ska köpa fler nVidia-akter, bara ifall att)

Visa signatur

|[●▪▪●]| #Lekburk#: Ryzen 3700X >-< GB-X570-AE >-< 32GB DDR4 >-< MSI RTX 3070 >-< 970 EVO 1TB SSD>--
--< Arctic Freezer 34 >-< FD Define R4 >-< Seasonic F.+ 650W >-< Acer XF270HUA >-< AOC Q2778VQE >--
#Servering#: Ryzen 1700@3,6GHz >-< Prime X470 Pro >-< 16GB DDR4 >-< GTX 1030 >-< 970 EVO 500GB SSD >--
--< Stockkylare >-< Antec P182 >-< Silver Power 600W >-< Samsung 245T |[●▪▪●]|

Permalänk
Medlem

Men snälla man kan väl inte på allvar tro att Nvidia kommer slå ut Intel och AMD bara för att dom lanserar denna teknik nu? AMD har senaste åren hamnat lite efter Nvidia men ray tracing tror jag inte är spiken i kistan, är isf något annat som gör att dom inte klarar av att komma upp till sin gamla nivå igen.

Jag kunde faktiskt inte bry mig mindre om denna teknik i dagsläget, känns som att det kommer ta lång tid för att det verkligen kommer bli standard det här, kan ha fel men det viktiga för mig är att det är prisvärda grafikkort som kan leverera stabil fps, vilket jag tror dom flesta är ute efter?
Att spelen kan göras snyggare osv med denna teknik är kul, men att behöva punga ut dessa löjliga summor som Nvidia vill ha är pinsamt.
Sen finns det alltid dom som vill ha det värsta men det är en annan diskussion.

Permalänk
Medlem

Har vi faktiska prestandasiffror med strålspårning aktiverat, samt jämförelse med samma upplösning och läget avstängt?

För min del fick jag uppfattningen om att det kostade på rätt bra i FPS att köra med det på. Det innebär således att jag antagligen inte kommer värdera det särskillt högt inför mitt nästa datorköp, då jag inte riktigt ser poängen om man måste ha de svindyra toppkorten (som jag inte lär kunna motivera köp av) för att kunna lira med acceptabel FPS. Kanske nästa dator igen, då kanske det också finns konkurrerande AMD-kort, och rimligare priser.

Visa signatur

Redbox: Asrock B650 Lightning ATX, 7800x3D -20CCO, XFX 6950XT, 2x32GB Corsair Vengence 6400 CL32, WD SN770 2TB, Corsair RMe 1000, Lian Li Lancool 216, Peerless Assassin 120 SE
Purpbox: Z87-Pro, I5 4670K@4.2, Sapphire 290 TRI-X, 2x8GB Crucial Tactical@stock, Deep Silence 1
Samsung Evo 250+500GB + QVO 1TB, 2x1TB 7200RPM backup/lagring
Det var bättre förr: E5300 2600MHz -> 3640MHz, Celeron 300A -> 450MHz

Permalänk
Medlem
Skrivet av e1m1:

Har vi faktiska prestandasiffror med strålspårning aktiverat

Snälla, säg raytracing. Strålspårning får bara tankarna på nån som springer runt med en geigermätare som tjuter.

Och nej, vi har inga siffror alls. Bara rykten.

Permalänk
Moderator
Testpilot
Skrivet av murklor:

Snälla, säg raytracing. Strålspårning får bara tankarna på nån som springer runt med en geigermätare som tjuter.

Och nej, vi har inga siffror alls. Bara rykten.

Det hade varit som att kalla Läderlappen för Batman... Är du tokig?

Visa signatur

ASrock x470 Taichi Ultimate - AMD Ryzen R9 3900x - G.Skill Ripjaws@3.6GHz 16GB RAM - RTX 3080 Ti - Super Flower Leadex Gold 1000W - Phanteks Enthoo Pro - AOC AG35UCG 34" 3440x1440p@100Hz - kalaset vattenkylt

Permalänk
Medlem
Skrivet av Dinoman:

Det hade varit som att kalla Läderlappen för Batman... Är du tokig?

Snarare Fladdermusmannen. Läderlappen är ju inte ens i närheten av direkt översättning

Permalänk
Moderator
Testpilot
Skrivet av murklor:

Snarare Fladdermusmannen. Läderlappen är ju inte ens i närheten av direkt översättning

Nej men det är den svenska tolkningen!

Visa signatur

ASrock x470 Taichi Ultimate - AMD Ryzen R9 3900x - G.Skill Ripjaws@3.6GHz 16GB RAM - RTX 3080 Ti - Super Flower Leadex Gold 1000W - Phanteks Enthoo Pro - AOC AG35UCG 34" 3440x1440p@100Hz - kalaset vattenkylt

Permalänk
Medlem
Skrivet av murklor:

Snälla, säg raytracing. Strålspårning får bara tankarna på nån som springer runt med en geigermätare som tjuter.

Och nej, vi har inga siffror alls. Bara rykten.

det hade sett roligare ut om det var den som höll i mätaren sprang runt och tjöt

Visa signatur

.: Learn the system, Play the system, Break the system :.

Permalänk
Medlem
Skrivet av murklor:

Snälla, säg raytracing. Strålspårning får bara tankarna på nån som springer runt med en geigermätare som tjuter.

Och nej, vi har inga siffror alls. Bara rykten.

Jag tolkar raytracing som någon som spårar strålar i en molnkammare. Vad ska jag göra då?

Permalänk
Hjälpsam

@Yoshman: borde väl räcka med tre värden för 3D koordinater, varför en 4*4 Matris?

Visa signatur

AMD Ryzen 7 1700 | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/z2ljhr | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/5krwxf
HTPC | https://valid.x86.fr/uuzli0 |

Permalänk
Medlem
Skrivet av RHWarrior:

tl;dr

Fråga dig själv:
Vad är "realtids raytracing", nVidia-korten lär ju ha begränsningar. Så fort man flyttat tröskeln lite längre fram, så kan man flytta den ännu längre fram, så har det sett ut i över 25 år vad gäller mjukvaru, icke-realtids raytracing.

AMD har inte motsvarande kort i handeln nej, ser det ut som att de KAN och VILL satsa hårt på spelmarknaden för grafikkort?

Som jag sagt tidigare, det kommer att ta TID innan NÅGRA spelutvecklare satsar på detta, så du kan glömma att sitta på 200 spel om tre-fyra månader som har fantastisk nvidia-raytracad grafik i 144 fps.

Och sen så är det monopolfrågan, VILL du att nVidia ska vara din enda leverantör för grafikkort?

(brb, ska köpa fler nVidia-akter, bara ifall att)

Om inte AMD lyckas matcha Nvidia så kanske Intel lyckas med det om några år. Dom har i alla fall dom finansiella musklerna för att ge Nvidia en bra match.

Permalänk
Medlem

Om en tänker efter lite så allt AMD behöver gör just nu är att lansera tillräckligt snabba grafikkort till en billig peng för att sälja mycket.
Priserna på dom nya korten från nvidia är rent ut sagt löjliga. Hur många % har råd med dom inom tidsintervallet dom är relevanta?
Kommer ens raytracing bli relevant innan nvidia släpper en ny generation och AMD släpper två generationer från dags datum?
Jag tror inte det.

Jag baserar detta på följande.

1. Priset på korten från nvidia.
2. Det är ny teknik. All ny teknik har en uppförsbacke.
3. Vad spelare har för system enligt Steam.
4. Allt övrigt jag inte orkar lista 02:42

Jag tror på framgång för raytracing i någon form från AMD, Intel och Nvidia. Men inte än.

Fler som tänker så här?

Visa signatur

CPU: I7 7700k @ 4.6GHz - Noctua NH D15S - Asus ROG Strix Z270F Gaming.
GPU: RTX 3070TI @2 st 120mm cf-v12hp hydro dynamic fläktar. 👍
RAM: 32GB DDR4 3200MHz. HÅRDDISK: 4 st SSD, 2 Mekaniska.
MONITOR:1 Xiaomi MI 34"- 3440x1440 144Hz MONITOR:2 Optix MAG274R 27" 1080p 144Hz MONITOR/Tv:3 LG 47lv355n-ZB 47". Nätagg: Corsair Newton R2 1000W. Allt i ett Cooler Master CM Storm Stryker.

Permalänk
Datavetare
Skrivet av Ratatosk:

@Yoshman: borde väl räcka med tre värden för 3D koordinater, varför en 4*4 Matris?

Grafik beskrivs i princip alltid m.h.a. homogena koordinater, vilket då lägger på en "extra" dimension (så en linje kräver 2x2 matriser, 2D kräver 3x3 och 3D kräver då 4x4).

Med homogena koordinater kan även saker som förflyttning hanteras m.h.a. matrismultiplikation, något som inte är möjligt om man använder 3x3 matriser, förflyttning kräver där addition.

Tänk att jag har ett objekt i 3D-rymden som inte är centrerad kring origo, antag att detta objekt utgörs av massor av vertexes. Om jag nu vill rotera detta objekt kring sitt eget centrum måste dessa tre saker ske

  1. flytta in origo i centrum av objektet (motsvarar att flytta objektet till origo)

  2. rotera alla vertexes

  3. flytta tillbaka origo

Rotation sker alltid runt origo, så utan förflyttning skulle man inte få rätt effekt.

Hur se detta ut med matriser? Utan homogena koordinater kan dessa tre operationer inte förenklas på något sätt då 1. och 3. då måste utgöras av additioner medan 2. är en multiplikation.

Med homogena koordinater kan däremot allt hanteras m.h.a. matrismultiplikation, så detta är ju vad som ska utföras

yN = F2 * R * F1 * xN

där xN är en viss vertex innan operationen och yN är den roterade varianten. Men F2 * R * F1 kommer ju vara samma för alla vertexes, så det kan man ju beräkna en gång för alla och ersätta med en ny matris T som gör alla tre sakerna i en smäll

yN = T * xN

Så man har nu gått från 3 st 3x3 matrisoperationer till att endast behöva 1 st 4x4 för att göra samma sak. Ju mer komplicerad transform, ju mer vinner man på detta! (Finns lite mer fördelar som homogena koordinater ger, som att gå från 3D till 2D projektion på skärmen är också enklare).

Visa signatur

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

Permalänk
Medlem
Skrivet av MarkSix:

Om inte AMD lyckas matcha Nvidia så kanske Intel lyckas med det om några år. Dom har i alla fall dom finansiella musklerna för att ge Nvidia en bra match.

Ja, man kan ju hoppas, 10-12 papp för ett grafikkort börjar bli löjligt mycket, och nån uppgradering ska det bli inom 2-3 år. Inte för att man behöver 2080 Ti för att lira 99% av alla spel på hyggliga inställningar men ändå.

Nåt från AMD som var lika krutigt som GCN-arkitekturen hade vart väldigt välkommet, VEGA är inte riktigt i fas med nVidia och sådär prisvärd.

Börjar förstå att en del skiter i PC-gaming och går på konsoll liksom...

Visa signatur

|[●▪▪●]| #Lekburk#: Ryzen 3700X >-< GB-X570-AE >-< 32GB DDR4 >-< MSI RTX 3070 >-< 970 EVO 1TB SSD>--
--< Arctic Freezer 34 >-< FD Define R4 >-< Seasonic F.+ 650W >-< Acer XF270HUA >-< AOC Q2778VQE >--
#Servering#: Ryzen 1700@3,6GHz >-< Prime X470 Pro >-< 16GB DDR4 >-< GTX 1030 >-< 970 EVO 500GB SSD >--
--< Stockkylare >-< Antec P182 >-< Silver Power 600W >-< Samsung 245T |[●▪▪●]|

Permalänk
Medlem
Skrivet av Yoshman:

Håller helt med.

SM
Motsvarar CU på AMD. Intels GPU fungerar lite annorlunda och är lite mer lik en "vanlig" CPU vilket nog förklarar varför den är så väldigt bra på GPGPU i förhållande till hur den står sig i ren grafik kontra AMD/Nvidia.

Kan göra en rad olika operationer, både heltal och flyttal. Den fundamentala begränsningen är ändå att det handlar om vad Nvidia kallar SIMT (Single Instruction Multiple Threads) vilket är en marginellt generaliserad variant av SIMD på CPU (och med AVX512 så är den skillnaden i praktiken helt borta).

För att en SM ska vara effektiv måste man ha dataparallella problem med en teoretisk parallellism klart över bredden på en "wave-front". Alla trådar i en wave-front måste köra samma instruktion alt. göra ingenting den cykeln.

Specifikt relaterat till matriser: en SM kan väldigt effektivt hantera en full wave-front (32 på Nvidia, 64 på AMD och variabelt på Intel men optimalt är typiskt 8-16) av matriser. D.v.s. man kan effektivt t.ex. multiplicera 32 matriser parallellt, inte alls i närheten lika effektivt att hantera en 32x32 matris!

Tensor-core

Insåg först inte exakt hur dessa fungerade mer än att de hanterar R = A * B + C där alla element är 4x4 matriser. A
och B är alltid 16-bit flyttal medan R och C kan vara 16- eller 32-bitar.

Det jag inte var helt säker på initialt var hur många sådana operationer som utförs på "bredden", men hittat information om att det är samma bredd som en SM. D.v.s. en tensor-core kan utföra upp till 32 st sådana operationer vilket är orsaken till den brutala flyttalsprestandan man får (varje "CUDA-core" i en tensor-core utför 128 FLOPS per cykel så totalt 32*128 = 4096 FLOPS per tensor-core och cykel!!!).

Grejen här är att man "bara" kan utföra just R = A * B + C. Vilket inte så bara då större matriser kan rekursivt brytas ned i mindre matriser och väldigt mycket kan beskrivas med matrisoperationer. Men ändå rätt mycket mer begränsat i funktioner jämfört med en SM och handlar fortfarande om data-parallellism då alla 32 "lanes" i en tensor-core måste användas för att det ska vara riktigt effektivt -> man måste ha ett problem där det fungerar bra att göra samma operation på >= 32 parallella storheter.

RT-core

Dessa lära också tugga 4x4 matriser som bara den, detta då 4x4 matriser är precis vad man använder för att beskriva koordinater i en 3D värld.

Men till skillnad från det SM/Tensor-cores är brutala på så kommer normalt strålföljning leda till strålar genom olika pixels kommer träffa olika ytor och därmed kräva olika behandling. Fortfarande ett brutalt parallellt problem, men det är primärt uppgiftsparallellt (olika strålar kan beräknas helt oberoende av andra, men uppsättningen instruktioner som ska appliceras kan skilja mellan strålar, även de strålar som ligger väldigt nära varandra).

Lite samma sak gäller fysik. Går definitivt att köra fysik på en GPU, men GPUn är inte sällan supereffekt på detta då olika kroppar kommer kräva olika instruktioner för sin beräkning. Vad man vill ha då är acceleration per beräkning, något som är lite lurigare på en GPU och något som passar SIMD på en CPU väsentligt bättre då dessa även kan användas på "andra" ledden. D.v.s i stället för att beräkna 4 olika matriser parallellt med SSE kan man ju hantera 4 olika rader/kolumner per "lane" i SSE -> man accelererar fallet att hantera en enda matris (olika beräkningar kan sedan hanteras av olika CPU-trådar då dess kan hantera uppgiftsparallellism).

Så strålföljning har ett visst mått av dataparallellism, men det är primärt uppgiftsparallellt -> inte optimalt att hantera med en traditionell GPU. Lite bättre att hantera på tensor-cores, men där tror jag begränsningen på 16-bitar för A och B matriser är ett problem (det är en ren feature för maskininlärning av lite olika skäl).

Tack för ett utmärkt svar! Verkar som jag inte var helt ute och cyklade trots allt. Förstår jag problemet rätt att det handlar om att vissa beräkningar på strålarna är beroende av varandra och därför svåra att parallellisera? Det är som jag förstår detta som gjort att rendering på CPU i renderingsfarmar fortfarande är så bra. Jag vet inte exakt hur det ser ut idag men utvecklingen av rendering på GPU har gått rätt långsamt.

Citat:

Well, egentligen läste jag kemiteknik, så är rent krasst inte en datorvetare i akademisk mening... Läste i.o.f.s. datateknik parallellt på 50 % under en tid, men det var mest då ursprungsplanen var att forska inom kvantkemi där man använder massor med matriser, massor med datorkraft och en hel del 3D-grafik (men IT-boomen hände och planer ändrades, jobbat med OS och multicore programmering >15 år nu...).

Båda kan hanteras rekursivt och beskrivas med matriser, men se ovan för skillnad i typ av parallellism

Själv är jag statstjänsteman inom ett smalt juridiskt område. Jag borde alltså knappt kunna knyta mina egna skor.
Jag har förvisso studerat datorgrafik, fast inte från en programmerares perspektiv. Funderar på om jag inte ska ta och bygga en renderare för att lära mig hur det funkar på riktigt. Det borde vara ett roligt projekt.

Citat:

Håller helt med. Ska bli riktigt spännande att se hur bra/dåligt MLSS kommer fungera i praktiken. Jag tror på denna teknik, om men människa kan inse vad som fattas i en bild som är uppskalad kan även en dator bli tränad att lura ut det. När datorn väl lurat ut det ser jag inte varför man inte kan lära den att fixa till bilden -> exakt vad MLSS gör i teorin.

Lär nog ändå ta ett bar vändor innan MLSS trimmats in ordentligt.

Just det sista du skriver där kan faktiskt bli riktigt intressant. Här kanske det finns oanad potential att realisera. Iterativa förbättringar i maskininlärning har i andra sammanhang visat sig leda till stora kliv. Se exempelvis utvecklingen av AlphaGO.
Kanske kan nVidia utveckla MLSS på liknande vis, både genom bättre hårdvara och bättre algoritmer. Det skulle i sin tur kunna få en hävstångseffekt - bättre MLSS leder till att vi får ut mer av RT-cores, och bättre RT-cores...

Permalänk
Hjälpsam

http://forums.directxtech.com/index.php?topic=5860.0

edit Vete fan! jag bygger och kan starta Hello World Triangeln men inget mer händer inga gigarays/s.

Visa signatur

AMD Ryzen 7 1700 | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/z2ljhr | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/5krwxf
HTPC | https://valid.x86.fr/uuzli0 |

Permalänk
Moderator
Testpilot
Skrivet av RHWarrior:

Ja, man kan ju hoppas, 10-12 papp för ett grafikkort börjar bli löjligt mycket, och nån uppgradering ska det bli inom 2-3 år. Inte för att man behöver 2080 Ti för att lira 99% av alla spel på hyggliga inställningar men ändå.

Nåt från AMD som var lika krutigt som GCN-arkitekturen hade vart väldigt välkommet, VEGA är inte riktigt i fas med nVidia och sådär prisvärd.

Börjar förstå att en del skiter i PC-gaming och går på konsoll liksom...

Tankarna har börjat dyka upp i mitt huvud.

Köper hellre en bra OLED TV och ett XBOX ONE X eller PS4 Pro.

Skickades från m.sweclockers.com

Visa signatur

ASrock x470 Taichi Ultimate - AMD Ryzen R9 3900x - G.Skill Ripjaws@3.6GHz 16GB RAM - RTX 3080 Ti - Super Flower Leadex Gold 1000W - Phanteks Enthoo Pro - AOC AG35UCG 34" 3440x1440p@100Hz - kalaset vattenkylt

Permalänk
Inaktiv
Skrivet av Dinoman:

Tankarna har börjat dyka upp i mitt huvud.

Köper hellre en bra OLED TV och ett XBOX ONE X eller PS4 Pro.

Skickades från m.sweclockers.com

Varför måste man köpa ett 2080Ti för att kunna lira på PC?
Köp istället ett lite billigare kort RTX 2070/2080, slår nog konsoler alla dar i veckan.
Datorskärm 32-34" nära ger också densamma känslan som en tv gör på längre håll.Du har dessutom mycket mer valmöjligheter och kan skräddarsy spelupplevelsen.

Permalänk
Datavetare
Skrivet av DasIch:

Förstår jag problemet rätt att det handlar om att vissa beräkningar på strålarna är beroende av varandra och därför svåra att parallellisera?

Inte helt korrekt. Varje stråle kan hanteras helt oberoende av andra strålar, så det är ett extremt parallellt problem.

Skillnaden ligger i typ av parallellism. Strålspårning är i grundet ett uppgiftsparallellt problem medan de flesta problem inom rastrering är data-parallella problem.

För att ta icke-abstrakta exempel

Uppgiftsparallellt: säg att du städar ditt hem medan jag tar hand om disken i mitt. Vi gör två uppgifter som är helt oberoende och kan därför parallelliseras perfekt då det inte finns några som helst beroende mellan våra uppgifter. Däremot kommer våra uppgifter kräva två distinkta sekvenser med arbetsmoment!

Dataparallellt: tänk en brädgård med obehandlat virke av en specifik dimension. Är exakt samma sekvens med arbetsmoment som ska utföras på varje bräda för att få dem grundmålande. Processen att måla varje planka är helt oberoende av övriga plankor.

Ovan är även något många missar lite när de försöker hitta vettiga saker att göra med CPUer som har väldigt många CPU-kärnor. En CPU med många kärnor är en perfekt match för uppgiftsparallella problem, däremot vill man primärt ha en fet SIMD-del för att hantera dataparallella problem.

Många (men absolut inte alla) vetenskapliga beräkningar är mer dataparallella än uppgiftsparallella. Däremot är långt fler server-relaterade arbetslaster uppgiftsparallella, även om det finns saker som är dataparallellt (maskininlärning är väl det som primärt gör att den andel växer kraftigt just nu då det är ett strikt dataparallellt problem).

Dataparallellism är en underklass till uppgiftsparallellism. Man hanterar dem ändå väldigt olika i HW då det är långt effektivare att skala dataparallellism jämfört med att skala uppgiftsparallellism. Därför GPGPU gör totalt mos av CPUer i för de saker som fungerar väl att köra på en GPU.

Visa signatur

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

Permalänk
Moderator
Testpilot
Skrivet av anon179202:

Varför måste man köpa ett 2080Ti för att kunna lira på PC?
Köp istället ett lite billigare kort RTX 2070/2080, slår nog konsoler alla dar i veckan.
Datorskärm 32-34" nära ger också densamma känslan som en tv gör på längre håll.Du har dessutom mycket mer valmöjligheter och kan skräddarsy spelupplevelsen.

Det sa jag inte och du behöver inte predika i kyrkan.

Min poäng är att dessa priserna kommer driva människor bort från high end pc-gaming och in i händerna på konsolmarknaden. För där finns en fungerande och konkurrensutsatt marknad där du får värde för pengarna.

PC är ett skämt på GPU-sidan. Tycker man att Turing är värt pengarna så anser man antagligen att Bentley är det också. De finns, men de är få och de är löjligt rika.

Skickades från m.sweclockers.com

Visa signatur

ASrock x470 Taichi Ultimate - AMD Ryzen R9 3900x - G.Skill Ripjaws@3.6GHz 16GB RAM - RTX 3080 Ti - Super Flower Leadex Gold 1000W - Phanteks Enthoo Pro - AOC AG35UCG 34" 3440x1440p@100Hz - kalaset vattenkylt

Permalänk
Medlem
Skrivet av Dinoman:

Det sa jag inte och du behöver inte predika i kyrkan.

Min poäng är att dessa priserna kommer driva människor bort från high end pc-gaming och in i händerna på konsolmarknaden. För där finns en fungerande och konkurrensutsatt marknad där du får värde för pengarna.

PC är ett skämt på GPU-sidan. Tycker man att Turing är värt pengarna så anser man antagligen att Bentley är det också. De finns, men de är få och de är löjligt rika.

Skickades från m.sweclockers.com

Så bara för bentley är dyra så vill folk inte köpa ex en vw golf och därför köper ett busskort istället.

Skälv kör jag med 1050ti och är sjukt nöjd. Om man har ett behov av att köpa det bästa av det bästa så får man helt enkelt casha upp

Permalänk
Moderator
Testpilot
Skrivet av PlogarN97:

Så bara för bentley är dyra så vill folk inte köpa ex en vw golf och därför köper ett busskort istället.

Skälv kör jag med 1050ti och är sjukt nöjd. Om man har ett behov av att köpa det bästa av det bästa så får man helt enkelt casha upp

Skrev jag det?

Själv köper du ett lågbudgetkort men har ändå åsikter om att high end ska vara 72% dyrare än tidigare generationer. Jag tror jag har fullständig fog för min åsikt.

Skickades från m.sweclockers.com

Visa signatur

ASrock x470 Taichi Ultimate - AMD Ryzen R9 3900x - G.Skill Ripjaws@3.6GHz 16GB RAM - RTX 3080 Ti - Super Flower Leadex Gold 1000W - Phanteks Enthoo Pro - AOC AG35UCG 34" 3440x1440p@100Hz - kalaset vattenkylt

Permalänk
Medlem
Skrivet av Dinoman:

Skrev jag det?

Själv köper du ett lågbudgetkort men har ändå åsikter om att high end ska vara 72% dyrare än tidigare generationer. Jag tror jag har fullständig fog för min åsikt.

Skickades från m.sweclockers.com

Nja jag tyckte 1080 var för dyrt också. Det gjorde inte att jag köpte en konsoll för det, utan jag köpte ett grafikkort som passade min budget.

Jag hade hållt med om det bara såldes grafikkort i prisklassen 10 000 kronor. Då hade jag övervägt en konsoll om jag ville spela...

Men eftersom det finns alternativ för min budget på PC-sidan så kan jag stanna kvar som en ”masterrace”.

Om folk ej har råd med 2080ti så får de väl köpa ex 2070 (eller något annat som passar budget).

Permalänk
Inaktiv
Skrivet av Dinoman:

Det sa jag inte och du behöver inte predika i kyrkan.

Min poäng är att dessa priserna kommer driva människor bort från high end pc-gaming och in i händerna på konsolmarknaden. För där finns en fungerande och konkurrensutsatt marknad där du får värde för pengarna.

PC är ett skämt på GPU-sidan. Tycker man att Turing är värt pengarna så anser man antagligen att Bentley är det också. De finns, men de är få och de är löjligt rika.

Skickades från m.sweclockers.com

Jo, håller med om detta, skillnaden blir större jämfört med konsolerna i pris. Men å andra sidan high-end andelen är väldigt liten, det som påverkar marknaden är nog pris på medium-range kort.
Vi har dessutom inte fått ett enda oberoende test än av Turing, så vi får vänta lite med utlåtande om hur mycket man faktiskt får.
Gråts mycket över 2080ti, men det behöver inte alls vara dyrt att lira om man inte vill det. Men förstår om high-end entusiasterna är lite ömma i baken just nu..

Permalänk
Moderator
Testpilot
Skrivet av PlogarN97:

Nja jag tyckte 1080 var för dyrt också. Det gjorde inte att jag köpte en konsoll för det, utan jag köpte ett grafikkort som passade min budget.

Jag hade hållt med om det bara såldes grafikkort i prisklassen 10 000 kronor. Då hade jag övervägt en konsoll om jag ville spela...

Men eftersom det finns alternativ för min budget på PC-sidan så kan jag stanna kvar som en ”masterrace”.

Om folk ej har råd med 2080ti så får de väl köpa ex 2070 (eller något annat som passar budget).

Nu kan jag tycka att GTX 1050 Ti knappast är "master race". Det ligger snarare rätt nära vad dagens toppkonsoller klarar av. Sen har PC så många fler fördelar än bara en överlägsen prestanda men mitt fokus i mitt inlägg var att jag kan inte ta nästa steg utan att behöva betala dubbelt så mycket som jag gjorde för fyra år sedan.

Som jag har tjatat om i tidigare trådar så har alltså prisutvecklingen, med början av Pascal skjutit i höjden. Givetvis hade jag inte räknat med något annat än att nya Turing skulle bli dyr eftersom AMD inte har något på samma planet att kontra med, men denna prisutvecklingen är helt bisarr.

Mitt överklockade 980 Ti har en GFLOPS på 8,3 cirka. Det presterar i syntetiska benchmarks som 3DMark Firestrike ungefär lika som ett standardklockat 1080 som ligger på 8,9 GFLOPS. Detta var anledningen till att jag avstod från Pascal. För liten prestandaboost till för mycket pengar.

RTX 2070 som du anser att jag ska köpa då för jag inte har råd med 2080 eller 2080 Ti. Det har 7,5 GFLOPS. Det kortet kommer väldigt sannolikt att hamna på samma pris som mitt 980 Ti Hybrid när jag köpte det, till risken för noll prestandavinst eller väldigt marginell.

Förstår du nu varför man som entusiast kan vara något demoraliserad inför dessa helt sinnessjuka priser?

Skrivet av anon179202:

Jo, håller med om detta, skillnaden blir större jämfört med konsolerna i pris. Men å andra sidan high-end andelen är väldigt liten, det som påverkar marknaden är nog pris på medium-range kort.
Vi har dessutom inte fått ett enda oberoende test än av Turing, så vi får vänta lite med utlåtande om hur mycket man faktiskt får.
Gråts mycket över 2080ti, men det behöver inte alls vara dyrt att lira om man inte vill det. Men förstår om high-end entusiasterna är lite ömma i baken just nu..

Alltså hela den här "butthurt" memen har jag inte förstått mig på. Du inser att priserna inte bara är höjda för high end va? Priserna kommer vara högre genom hela brädet. De har skjutit fram posterna.

GTX 2060 kommer sannolikt att landa på 399$ i riktpris eller liknande. Alltså 5-6000:-.

Jag har suttit i fyra år och väntat på ett kort som skall vara värt pengarna för mig att lägga så att jag kan lira UltraWide 1440p i bekväma 100 FPS. Turing ser ut att kunna bli kortet som klarar detta. RTX 2080 Ti dvs. Som kostar 13 200:-. Mitt 980 Ti Hybrid med vattenkylningslösning som var stort 601 mm2 och var 33% snabbare än föregående toppkort 780 Ti kostade 8000:-. 780 Ti gick på runt 6500 - 7000:-.

1080 Ti som var 60% snabbare än 980 Ti kostade 7000-8000. Hybridkortet gick på runt 9000:-.

Vad är det som är så svårt att förstå att människor är besvikna på priserna och att de har blivit så löjligt höga att snart kan man köpa sig en 4K TV och ett XBONEX för samma pris och få betydligt mycket mer ut av det.

Visa signatur

ASrock x470 Taichi Ultimate - AMD Ryzen R9 3900x - G.Skill Ripjaws@3.6GHz 16GB RAM - RTX 3080 Ti - Super Flower Leadex Gold 1000W - Phanteks Enthoo Pro - AOC AG35UCG 34" 3440x1440p@100Hz - kalaset vattenkylt

Permalänk
Medlem
Skrivet av Dinoman:

Nu kan jag tycka att GTX 1050 Ti knappast är "master race". Det ligger snarare rätt nära vad dagens toppkonsoller klarar av. Sen har PC så många fler fördelar än bara en överlägsen prestanda men mitt fokus i mitt inlägg var att jag kan inte ta nästa steg utan att behöva betala dubbelt så mycket som jag gjorde för fyra år sedan.

Som jag har tjatat om i tidigare trådar så har alltså prisutvecklingen, med början av Pascal skjutit i höjden. Givetvis hade jag inte räknat med något annat än att nya Turing skulle bli dyr eftersom AMD inte har något på samma planet att kontra med, men denna prisutvecklingen är helt bisarr.

Mitt överklockade 980 Ti har en GFLOPS på 8,3 cirka. Det presterar i syntetiska benchmarks som 3DMark Firestrike ungefär lika som ett standardklockat 1080 som ligger på 8,9 GFLOPS. Detta var anledningen till att jag avstod från Pascal. För liten prestandaboost till för mycket pengar.

RTX 2070 som du anser att jag ska köpa då för jag inte har råd med 2080 eller 2080 Ti. Det har 7,5 GFLOPS. Det kortet kommer väldigt sannolikt att hamna på samma pris som mitt 980 Ti Hybrid när jag köpte det, till risken för noll prestandavinst eller väldigt marginell.

Förstår du nu varför man som entusiast kan vara något demoraliserad inför dessa helt sinnessjuka priser?

Alltså hela den här "butthurt" memen har jag inte förstått mig på. Du inser att priserna inte bara är höjda för high end va? Priserna kommer vara högre genom hela brädet. De har skjutit fram posterna.

GTX 2060 kommer sannolikt att landa på 399$ i riktpris eller liknande. Alltså 5-6000:-.

Jag har suttit i fyra år och väntat på ett kort som skall vara värt pengarna för mig att lägga så att jag kan lira UltraWide 1440p i bekväma 100 FPS. Turing ser ut att kunna bli kortet som klarar detta. RTX 2080 Ti dvs. Som kostar 13 200:-. Mitt 980 Ti Hybrid med vattenkylningslösning som var stort 601 mm2 och var 33% snabbare än föregående toppkort 780 Ti kostade 8000:-. 780 Ti gick på runt 6500 - 7000:-.

1080 Ti som var 60% snabbare än 980 Ti kostade 7000-8000. Hybridkortet gick på runt 9000:-.

Vad är det som är så svårt att förstå att människor är besvikna på priserna och att de har blivit så löjligt höga att snart kan man köpa sig en 4K TV och ett XBONEX för samma pris och få betydligt mycket mer ut av det.

Köp det du har råd med. Märkligare än så är det inte.

Om du inte har budgeten att ta nästa steg så äre ju så. Även med dessa priser är pc gaming en billig materialsport/hobby. Gäller bara att prioritera, som ulf K ständigt säger.

Skickades från m.sweclockers.com