Pratili ste glasine i ignorirali hype; čekao si komentari i pogledao sve metrike. Napokon, pljusnuli ste dolare i odšetali s jednom od najnovijih grafičkih kartica AMD-a ili Nvidije. Među njima je i masivni GPU prepun milijardi milijardi tranzistora koji rade taktovima nezamislivih prije deset godina.

Stvarno ste zadovoljni kupnjom, a igre nisu izgledale ili se igrale bolje. No, možda se pitate što točno pokreće vaš novi Radeon. RX 5700 i koliko različiti na čipu GeForce RTX.

AMD vs Nvidia: Dobrodošli u arhitekturu i usporedbu značajki najnovijih grafičkih procesora od Navi protiv Turinga.

Moderna GPU anatomija

Prije nego što počnemo razbijati uobičajene strukture i sustave čipova, pogledajmo osnovni format koji slijede svi moderni GPU-ovi. Uglavnom su ti procesori samo kalkulatori s pomičnim zarezom (FP); drugim riječima, izvode matematičke operacije na decimalnim / razlomljenim vrijednostima. Tako bi barem GPU trebao imati logičku jedinicu posvećenu tim zadacima, a to su obično FP ALU (aritmetičke logičke jedinice s pomičnim zarezom) ili skraćeno FPU. Nisu svi izračuni GPU-ovi u FP vrijednostima podataka, tako da će postojati i ALU za cijeli broj (cijeli broj) mogu biti matematičke operacije ili ista jedinica koja obrađuje obje vrste podataka.




Sada će ove logičke jedinice trebati nešto da ih organiziraju dekodiranjem i organiziranjem kako bi bile zauzete, a to će biti u obliku barem jedne posebne skupine logičkih jedinica. Za razliku od ALU-a, krajnji korisnik ih ne može programirati; umjesto toga, dobavljač hardvera pobrinut će se da ovim procesom u potpunosti upravlja GPU i njegovi pokretački programi.



Mora postojati i neka vrsta memorijske strukture za pohranu ovih uputa i podataka koje treba obraditi. Na svojoj najjednostavnijoj razini, imao bi dva oblika: predmemorija i jedan bod lokalno pamćenje. Prvi će biti ugrađen u GPU i SRAM. Ova vrsta memorije je brza, ali zauzima relativno velik dio izgleda procesora. lokalno pamćenje DRAMANešto je sporiji od SRAM-a i obično se ne stavlja u GPU. Izvorna memorija na većini grafičkih kartica koje danas vidimo GDDR DRAM moduli.

Konačno, uključuje dodatne zadatke ugađanja poput stvaranja 3D grafike, stvaranja trokuta od vrhova, rasteriziranja 3D okvira, uzorkovanja i miješanja tekstura. Kao i upute i upravljačke jedinice fiksna funkcija u prirodi. Što rade i kako rade potpuno je transparentno za korisnike koji programiraju i koriste GPU.




Sastavimo ovo i napravimo GPU:



Narančasti blok je jedinica koja obrađuje teksture koristeći ono što se naziva jedinice za mapiranje tekstura (TMU'lar) - TA adresiranje teksture volumen - stvara memorijska mjesta za upotrebu predmemorije i lokalne memorije - i TF dohvaćanje teksture prikuplja vrijednosti teksture iz memorije i agregira ih. TMU-ovi su danas približno jednaki kod svih dobavljača jer mogu obrađivati, uzorkovati i miješati višestruke vrijednosti teksture po GPU-taktu.




Donji blok zapisuje vrijednosti boja piksela u kadar, vraća ih uzorake (PO) i miješa ih (PB); ovaj blok također izvodi operacije koje se koriste kada se primjenjuje antialiasing. Naziv ovog bloka: izlazna jedinica rendera or stvoriti pozadinu (ROP / RB kratko). Poput TMU-a, oni postaju prilično standardni, a svaki udobno obrađuje nekoliko piksela po taktu.

Ipak, naš osnovni GPU bio bi strašan, čak i prema standardima prije 13 godina. Zašto je to?

Postoji samo jedan FPU, TMU i ROP. Grafički procesori poput Nvidijine GeForce 8800 GTX u 2006. godini imali su 128, 32, odnosno 24. Počnimo raditi nešto po tom pitanju ....




Kao i svaki dobar proizvođač procesora, ažurirali smo GPU dodavanjem još nekih jedinica. To znači da čip može istovremeno obrađivati ​​više uputa. Da bismo vam pomogli u tome, dodali smo još malo predmemorije, ali ovaj put tik uz logičke jedinice. Što je predmemorija bliža strukturi kalkulatora, brže se može inicijalizirati na dodijeljenim joj operacijama.

Problem s našim novim dizajnom je taj što još uvijek postoji samo jedan kontroler koji obrađuje naše dodatne ALU-ove. Bilo bi bolje da imamo više blokova jedinica, kojima svi upravljaju njihovi zasebni kontroleri, jer to znači da istovremeno možemo izvoditi vrlo različite operacije.

Sad je ovo više! Pojedinačni ALU blokovi spakirani vlastitim TMU-ovima i ROP-ovima, potpomognuti ukusno ukusnim, brzim kriškama. Još uvijek postoji samo jedan od svega, ali osnovna verzija nije milion milja udaljena od grafičkog procesora koji danas vidimo u računalima i konzolama.

Navi ve Turing: Godzilla GPU'ları

Sad kad smo definirali osnovni izgled grafičkog čipa, evo nekoliko slika stvarnih čipova, premda malo uvećanih i prikazanih kako bi se istaknule razne građe, kao i Navi vs. Krenimo s Turingovom usporedbom.

S lijeve strane je najnoviji AMD-ov procesor. Cjelokupni dizajn čipa zove se Navi (neki ga nazivaju Navi 10), a grafička arhitektura RDNA. Pokraj njega, s desne strane, nalazi se Nvidijin TU102 procesor pune veličine s najnovijom Turingovom arhitekturom. Važno je napomenuti da ove slike nisu skalirane: površina Navi uzorka je 251 mm2, dok je TU102 752 mm2. Nvidijin procesor je velik, ali ne 8 puta veći od AMD-ove ponude!

Oba kolosalni broj tranzistora (18,6 milijardi naspram 10,3), ali TU102 ima prosječno ~ 25 milijuna tranzistora po kvadratnom mm, u usporedbi s Navi-ovim 41 milijun po kvadratnom mm.

To je zato što iako oba čipa proizvodi TSMC, oni se proizvode na različitim procesnim čvorovima: Nvidijin Turing nalazi se na zreloj 12nm proizvodnoj liniji, dok je AMD-ova Navi izgrađena na novijem 7nm čvoru.

Samo gledanje slika uzoraka ne govori nam puno o arhitekturama, pa pogledajmo GPU blok dijagrame koje su proizvele obje tvrtke.

Dijagrami nisu stopostotni prikaz stvarnih izgleda, ali ako ih zakrenete za 90 stupnjeva, mogu se prepoznati različiti blokovi i središnja traka koji se pojavljuju u oba. Za početak možemo vidjeti da dva GPU-a imaju opću građu poput naše (iako više od svega drugog!).

Oba dizajna imaju slojevit pristup načinu na koji je sve posloženo i grupirano - da bi se počeo koristiti Navi, GPU se sastoji od 2 bloka koja AMD traži Shader motori (SE), od kojih se svaki naziva 2 bloka asinkroni Računalni motori (AS). Svaki od njih sadrži 5 blokova u zaglavlju. Procesori radne grupe (WGP), koji se sastoji od 2 Jedinice za obradu podataka (Suština).

Za Turingov dizajn nazivi i brojevi su različiti, ali hijerarhija je vrlo slična: 6 Kompleti za grafičko prikazivanje (GPC), po 6 komada Kompleti za prikaz tekstura (TPC), po 2 Streaming višeprocesor (SM) blokovi.

Ova organizacija počinje imati smisla ako na grafički procesor gledate kao na veliku tvornicu u kojoj različiti odjeli proizvode različite proizvode koristeći iste sirovine. Direktor tvornice šalje sve operativne detalje poduzeću, koje se zatim raščlanjuje na razne zadatke i radna opterećenja. Imajući više od jednog, neovisna Produktivnost radne snage povećana je u tvornici. Ovdje se ništa drugačije ne razlikuje od GPU-a i čarobne ključne riječi mjerenje vremena.

Prednji i srednji dio, četa - vrijeme i otprema

Kako izgledamo Studije stvaranja 3D igaraVidjeli smo da GPU nije ništa drugo nego superbrzi kalkulator koji izvodi niz matematičkih operacija na milijunima podataka. Navi i Turing klasificirani su kao: Više podataka s jednom naredbom (SIMD) procesori, ali bolje objašnjenje je jednosmjerni multi Nit (Osjećaj).

Moderna 3D igra generira stotine niti, ponekad u tisućama, jer je broj vrhova i piksela za obradu ogroman. Da biste sve to izveli u samo nekoliko mikrosekundi, važno je imati što više logičkih jedinica, a da se sve ne zaustavlja, jer potrebni podaci nisu na pravom mjestu ili u njima nema dovoljno prostora za rad.

Kada smo pogledali kako funkcionira stvaranje 3D igara, vidjeli smo da GPU nije ništa drugo do stvarno brz kalkulator, a radili smo razne matematičke operacije na milijunima podataka. Navi i Turing klasificirani su kao procesori s jednim zapovjednim višestrukim podacima (SIMD), ali bolji opis bio bi višenamjenski niti s jednom naredbom (SIMT).

Navi i Turing rade slično pa središnja jedinica uzima sve niti, a zatim ih započinje programirati i emitirati. U AMD čipu, ova uloga Grafički procesor naredbi; Nvidia'da, GigaThread Motoru. Niti su raspoređeni tako da se oni s istim uputama grupiraju u zbirku od 32 skupine.

AMD ovu kolekciju valdok Nvidia zakrivljenost. Za Navi računalna jedinica može obraditi 2 vala (ili val s 64 niti, ali to traje dvostruko više) i Stream Multiprocessor u Turingu s 4 osnove. Oba dizajna su neovisna o valu / warpu, što znači da ostali ne trebaju završiti prije nego što počnu.

Dotad se ne razlikuje puno između Navi i Turinga - oboje su dizajnirani za obradu više niti za stvaranje i izračunavanje radnih opterećenja. Da bismo vidjeli gdje se dva GPU diva razlikuju u dizajnu, moramo pogledati koji procesori su to niti.

Izvršna razlika - RDNA i CUDA

Iako se čini da je velik dio korištene terminologije jednak, AMD i Nvidia imaju sasvim drugačiji pristup svojim kompozitnim shader jedinicama. Nvidijine izvršne jedinice (ČUDA jezgre) digitalni u prirodi - to znači da jedinica izvodi matematičku operaciju nad komponentom podataka; za razliku od AMD jedinica (Stream procesori) raditi na vektori - operacija na više podataka. Za skalarne operacije postoji samo jedna posebna jedinica.

Prije nego što bliže pogledamo izvršne jedinice, ispitajmo AMD-ove vlastite preinake. Tijekom 7 godina Radeon grafičke kartice slijedile su arhitekturu nazvanu Graphics Core Next (GCN). Svaki novi čip revidirao je različite aspekte dizajna, ali svi su u osnovi bili isti.

AMD je pružio kratku povijest arhitekture GPU-a:

GCN je evolucija TeraScale-a, dizajna koji je omogućio istovremeno obrađivanje velikih valova. Glavni problem s TeraScaleom bio je taj što nije bio baš prijateljski raspoložen prema programerima te su mu trebale vrlo specifične rutine kako bi se iz njega izvuklo najbolje. GCN je to popravio i pružio puno pristupačniju platformu.

CU-ovi u Navi-u značajno su revidirani s GCN-a kao dio AMD-ovog procesa poboljšanja. Svaka CU sadrži dva seta:

  • 32 SP (IEE754 FP32 i INT32 vektorske ALU-ove)
  • 1 SFU
  • 1 INT32 vaga ALU
  • 1 vremenska i otpremna jedinica

Uz to, svaka CU sadrži 4 jedinice tkiva. Postoje i druge jedinice za izvršavanje operacija čitanja / pisanja podataka iz predmemorije, ali nisu prikazane na donjoj slici:

U usporedbi s GCN-om, postavljanje RDNA CU-a možda neće izgledati puno drugačije, ali tako je ovdje sve važno i organizirano. Za početak, svaki set od 32 SP-a ima svoju specifičnu jedinicu s uputama, GCN je imao samo jedan program za 4 seta od 16 SP-a.

To je značajna promjena, što znači da se po jedan val od 32 niti po taktu može isporučiti u svaki SP set. RDNA arhitektura također omogućuje vektorskim jedinicama da obrađuju valove od 16 niti dvostrukom brzinom i valove od 64 niti pri polovini, tako da je kôd napisan za sve prethodne Radeon grafičke kartice i dalje podržan.

Za programere igara ove će promjene biti vrlo popularne.

Za skalarne operacije sada postoje dvije jedinice koje se mogu nositi s njima; jedino smanjenje broja komponenata je u obliku SFU-a - ovih posebna funkcija jedinice, koji izvodi vrlo specifične matematičke operacije, na pr. trigonometrijski (sinus, tangenta), uzajamni (podijeljeni brojem) i kvadratni korijeni. RDNA ih ima manje u usporedbi s GCN-om, ali sada mogu raditi na skupovima podataka dvostruko većim nego prije.

Za programere igara ove će promjene biti vrlo popularne. Bilo je puno potencijalnih performansi na starijim Radeon grafičkim karticama, ali to je bilo vrlo teško učiniti. Sada je AMD poduzeo veliki korak prema smanjenju kašnjenja u uputama za obradu i zadržavanju značajki kako bi osigurao povratnu kompatibilnost za sve programe dizajnirane za GCN arhitekturu.

Ali što je s profesionalnom grafikom ili računalnim tržištem? Jesu li ove promjene korisne i za njih?

Kratki odgovor je da (vjerojatno). Iako trenutna verzija Navi čipa pronađena u kolegama Radeon RX 5700 XT ima manje Stream procesora od prethodnog dizajna Vega, bolje smo nastupili Prethodna generacija Radeon RX Vega 56 prilično je jednostavna:

Dio ovog poboljšanja performansi dolazit će od RX Vega 56, veće brzine takta RX 5700 XT (tako da u lokalnu memoriju može upisati više piksela u sekundi), ali pada do 15% pri vrhunskim performansama cjelobrojnih podataka i pokretnih zareza; međutim, otkrili smo da Navi čip nadmašuje Vegu za 18%.

Znanstvenici koji vode programe profesionalnog prikazivanja i složene algoritme ne eksplodiraju s nekoliko rundi Battlefielda V na djelu (tj. može biti...) samo ako se brže obrađuju skalarne, vektorske i matrične operacije u mehanizmu igre, brod na računarsko tržište. Trenutno ne znamo koji su AMD-ovi planovi za profesionalno tržište - možda će nastaviti s Vega arhitekturom i pomoći u poboljšanju dizajna, proizvodnje, ali s obzirom na poboljšanja u Navi, tvrtka bi trebala sve premjestiti na novu arhitekturu .

Nvidijin GPU dizajn doživio je sličnu evoluciju od 2006. godine, kada su lansirali GeForce 8 seriju, iako s manje radikalnim promjenama od AMD-ove. Ovaj GPU je prva Teslina arhitektura koja koristi shader pristup u izvedbenoj arhitekturi. Ispod možemo vidjeti promjene u SM blokovima od nasljednika Tesle (Fermi) do Turingovog prethodnika (Volta):

Kao što je ranije spomenuto u ovom članku, CUDA jezgre digitalni. Oni mogu izvršiti jednu float i jednu cjelobrojnu naredbu po ciklusu takta u podatkovnoj komponenti (međutim, imajte na umu da sama instrukcija može potrajati više ciklusa takta da bi se obradila), ali ih vremenske jedinice raspoređuju u skupine, dajući programeru vektorske operacije. Najznačajnija promjena tijekom godina, osim što je samo više jedinica, uključuje način na koji su organizirani i podijeljeni.

U Keplerovom dizajnu, puni čip imao je 5 GPC-ova, svaki s po tri SM bloka; Kad se pojavio Pascal, GPC-ovi su bili podijeljeni u zasebne particije (TPC) s dva SM-a po TPC-u. Kao i u Navi dizajnu. ova je fragmentacija važna jer omogućuje što cjelovitiju upotrebu cjelokupnog GPU-a; može se paralelno obrađivati ​​više neovisnih grupa instrukcija, povećavajući zasjenjenost procesora i računske performanse.

Pogledajmo Turingov ekvivalent s RDNA Compute Unit:

SM sadrži 4 bloka transakcija, od kojih svaki sadrži:

  • 1 jedinica za raspored i otpremu uputa
  • 16 IEE754 FP32 vaga ALU
  • 16 INT32 vaga ALU
  • 2 boje tenzora
  • 4 SFU
  • 4 Učitavanje / pohrana (koja obrađuje predmemoriju za čitanje / pisanje)

Postoje i 2 FP64 jedinice po SM-u, ali Nvidia ih više ne prikazuje u blok dijagramima, a svaki SM ima 4 jedinice teksture (koje sadrže sisteme za adresiranje teksture i filtriranje teksture) i 1 RT (Ray Tracing) jezgru.

FP32 i INT32 ALU-ovi mogu raditi istovremeno i paralelno. Ovo je važna značajka, jer iako strojevi za 3D prikazivanje često zahtijevaju izračune s pomičnim zarezom, treba obaviti popriličan broj jednostavnih cjelobrojnih operacija (npr. Izračun adrese podataka).

Tenzorske jezgre su posebne ALU-e koje izvode matrične operacije. Matrice su 'kvadratni' nizovi podataka, a jezgre tenzora rade na matricama 4 x 4. FP16 je dizajniran za obradu komponenata podataka INT8 ili INT4 na takav način da dolazi do plutajućeg rada na 64 FMA (stopljeno množenje-dodavanje) u jednom taktu. Ova vrsta izračuna je tzv neuronske mreže i zaključivanje - nije baš uobičajeno u 3D igrama, ali ga poput Facebooka jako koriste u vozilima s algoritmima analize društvenih mreža ili sustavima za samovozu. Navi također može izvoditi matrične izračune, ali za to je potrebno puno SP-a; U Turingovom sustavu mogu se obavljati matrične operacije dok CUDA jezgre rade drugu matematiku.

RT Core je još jedna zaštićena jedinica Turingove arhitekture koja izvodi vrlo specifične matematičke algoritme koji se koriste za Nvidijin sustav za traženje zraka. Potpuna analiza ovoga izvan je dosega ovog članka, ali RT Core su dva sustava koja rade odvojeno od ostatka SM-a, tako da može raditi na vertex ili pixel senderima dok je RT Core zauzet izračunima. za traženje zraka.

Na osnovnoj razini, Navi i Turing imaju izvršne jedinice koje nude prilično sličan skup značajki (zahtjev koji proizlazi iz poštivanja zahtjeva Direct3D, OpenGL, itd.) ...

Na osnovnoj razini, Navi i Turing imaju izvršne jedinice koje nude prilično sličan skup značajki (zahtjev koji proizlazi iz udovoljavanja zahtjevima Direct3D, OpenGL, itd.), Ali oni imaju vrlo drugačiji pristup načinu na koji su te značajke. gotov. Što se tiče dizajna koji je bolji, svodi se na to kako se oni koriste: program koji generira FP32 vektorske izračune i puno niti koje izvode malo favorizirat će Navi, dok će program s različitim cijelim brojevima, pokretnim zarezom, skalarom vektorski izračuni koristit će Turingovu fleksibilnost, preferirajte itd.

Hijerarhija sjećanja

Moderni GPU-ovi su stream procesori, odnosno dizajnirani su za izvođenje niza operacija nad svakim elementom u podatkovnom toku. To ih čini manje fleksibilnima od CPU-a opće namjene, a također zahtijeva optimizaciju hijerarhije memorije čipa kako bi podaci i upute do ALU-a stizali što brže i u što većem broju tokova. To znači da će GPU imati manje predmemorije od CPU-a jer većina čipa mora biti posvećena količini predmemorije, a ne pristupu predmemoriji.

I AMD i Nvidia pribjegavaju korištenju više predmemorija unutar čipova, pa pogledajmo što je prvo zapakirala Navi.

Počevši od najniže razine hijerarhije, u dva bloka strujnih procesora (obično se koristi 256 kilograma vektorskih registara opće namjene) datoteka dnevnika) bio je jednak iznosu kao Vega, ali između 4 bloka SP; Ponestajanje registara pri pokušaju rukovanja velikim brojem niti stvarno šteti performansama, pa je ovo definitivno "dobra stvar". AMD je također uvelike povećao datoteku skalarnog registra. Tamo gdje je prije bilo samo 4 kiB, sada je 32 kilograma po skalarnoj jedinici.

Dvije računske jedinice tada dijele 32-kilogramsku L0 predmemoriju i 16-kilogramsku skalarnu predmemoriju podataka, ali svaka CU dobiva vlastitu vektorsku L0-predmemoriju od 32 kilograma; povezivanje sve te memorije s ALU-ima je lokalna razmjena podataka od 128 kilograma.

U Navi-u dva računalna motora čine procesor radne grupe, a njih pet čini Asinkroni računalni mehanizam (ACE). Svaki ACE ima pristup vlastitoj L1 predmemoriji od 128 kilograma, a cjelokupni GPU dodatno podržava 4 MB L2 predmemorije koja se povezuje s L1 predmemorijom i ostalim dijelovima procesora.

To je oblik AMD-ove vlasničke arhitekture povezivanja Infinity Fabric, jer se sustav strogo koristi za obradu 16 GDDR6 memorijskih kontrolera. Da bi povećala propusnost memorije, Navi također koristi kompresiju boja bez gubitaka između L1, L2 i izvorne GDDR6 memorije.

Opet, sve je ovo dobrodošlo, pogotovo u usporedbi s prethodnim AMD-ovim čipovima koji nisu imali dovoljno predmemorije niske razine za broj jedinica sjenčanja koje su uključili. Ukratko, više predmemorije jednako je većoj internoj propusnosti, manje tromim uputama (jer moraju dohvatiti više podataka iz memorije) itd. A to se samo izjednačava s boljim performansama.

Što se tiče Turingove hijerarhije, mora se reći da je Nvidia na sramežljivoj strani kada je u pitanju pružanje detaljnog znanja u ovom području. Ranije u ovom članku vidjeli smo da je svaki SM podijeljen u 4 bloka transakcija - svaki s manjom datotekom dnevnika od 64 kilograma od one koja se nalazi u Naviju, ali imajte na umu da su Turingovi ALU skalarni, a ne vektorski. , jedinice.

Sljedećih se 96 kiB dijeljene memorije, 64 kiB L1 predmemorije podataka i 32 kiB predmemorije tekstura ili dodatni prostor za uštedu mogu se koristiti za svaki SM. U 'načinu izračuna', dijeljena memorija može se podijeliti na različite particije, poput 32 kiB zajedničke memorije i 64 kiB L1 predmemorije, ali to se uvijek radi kao 64 + 32 particije.

Nedostatak detalja o okretanju memorijskog sustava ostavio je da želimo još, pa smo se obratili GPU istraživačkom timu iz Citadel Enterprise Americas. Nedavno su objavili dva članka. Vrijeme ve Turinga njihova arhitektura; Gornja slika je fragmentacija hijerarhije memorije u TU104 čipu (puni TU102 sportskih 6144 kiB L2 predmemorije).

Tim je potvrdio da propusnost L1 predmemorije iznosi 64 bita po ciklusu i napomenuo da je učinkovitost Turingove L1 predmemorije koja se testira najbolja od svih Nvidijinih GPU-a. To je ravnopravno Navi, iako AMD-ov čip ima veću brzinu čitanja za Local Datastore, ali nižu za upute / fiksne predmemorije.

Oba GPU-a koriste GDDR6 za matičnu memoriju - ovo je najnovija verzija Graphics DDR SDRAM-a - i oba koriste 32-bitne veze s memorijskim modulima, pa Radeon RX 5700 XT Ima 256 memorijskih čipova i pruža maksimalnu propusnost od 256 GiB / s i 8 GiB prostora. jedan GeForce RTX 2080 Ti Radi s TU102 čipom, s 11 takvih modula za propusnost 352 GiB / s i 11 GiB prostora za pohranu.

AMD-ova dokumentacija ponekad se može činiti zbunjujućom: prvi blok dijagram koji vidimo Navi prikazuje četiri 64-bitna memorijska kontrolera, dok kasnija slika prikazuje 16 kontrolera. S obzirom Samsung nudi samo 32-bitni GDDR6 Čini se da druga slika pokazuje koliko postoji veza između sustava Infinity Fabric i memorijskih kontrolera. Vjerojatno postoje samo 4 memorijska kontrolera i svaki koristi dva modula.

Sve u svemu, čini se da nema velike razlike između Navi i Turinga što se tiče njihove predmemorije i lokalne memorije. Navi se malo više bavi pristupnom dijelu stvari s većim predmemorijama uputa / konstanta i L1, ali oboje su ispunjeni, oboje koriste kompresiju boja gdje je to moguće i imaju puno namjenskih GPU uzoraka i u pristupu memoriji i u pristupu memoriji. koristi se za maksimiziranje propusnosti.

Trokuti, teksture i pikseli

Prije petnaest godina, proizvođači GPU-a učinili su puno o tome koliko trokuta njihovi čipovi mogu prikazati, broju teksturnih elemenata koji se mogu filtrirati po ciklusu i sposobnosti izlaznih jedinica za prikaz (ROP). Ti su aspekti i danas važni, ali fokus je puno više na strani izvršenja jer tehnologije 3D prikazivanja zahtijevaju više računalnih performansi nego ikad prije.

Međutim, samo da napomenem da na tim područjima nema odmah uočljive razlike između Navi i Turinga, teksturne jedinice i ROP-ove još uvijek vrijedi istražiti. U obje arhitekture, teksturne jedinice mogu obraditi i dohvatiti 4 elementa teksture, filtrirati ih nepoznate u jednom elementu i sve ih pohraniti u jedan ciklus takta (zanemarujući dodatne cikluse takta poduzete za dohvaćanje podataka iz lokalne memorije).

Raspored ROP / RB-ova malo se razlikuje između Navi i Turinga, ali ne puno: AMD čip ima 4 RB-a po ACE-u i svaki može dati 4 pomiješana piksela po taktu; U Turingu svaki GPC ima dva RB-a, svaki daje 8 piksela na sat. Broj ROP-a GPU-a zaista je mjerenje izlazne brzine ovog piksela, tako da će puni Navi čip dati 64 piksela po satu, a puni TU102 96 (ali imajte na umu da je ovo veći čip).

Manje je informacija o trokutastoj strani stvari. Ono što znamo jest da Navi još uvijek daje najviše 4 primitiva po taktu (1 po ACE), ali još nema riječi o tome je li AMD riješio problem s tim problemom. Primitivni sjenčići. Ovo je bila vrlo hvaljena značajka Vege i omogućila je programerima da imaju puno veću kontrolu nad primitivima, tako da bi mogao povećati primitivnu propusnost za faktor 4. funkcionalnost uklonjena iz upravljačkih programa Proizvod je mirovao nedugo nakon lansiranja i od tada miruje.

Iako još uvijek čekamo dodatne informacije o Navi, bilo bi nerazumno dalje nagađati. Turing također obrađuje 1 primitiv po satu po GPC-u (tj. Do 6 za puni TU102 GPU) u rasterskim motorima, ali također Mrežasti sjenčićiNudi istu funkcionalnost kao i AMD-ovi Primitive Shaderi; Direct3D nije skup značajki OpenGL ili Vulkan, već je dostupan putem API proširenja.

Čini se da ovo daje Turingu prednost u odnosu na Navi u pogledu rukovanja trokutima i primitivima, ali trenutno u javnosti nema dovoljno preciznih podataka.

Nije sve u izvršnim jedinicama

Postoje i drugi aspekti Navi i Turinga koje vrijedi usporediti. Za početak, oba GPU-a imaju vrlo napredne mehanizme za prikaz i medije. Prva obrađuje izlaz na monitor, druga kodira i dekodira video tokove.

Kao što biste očekivali od novog GPU dizajna za 2019. godinu, Navijev zaslon nudi vrlo visoke rezolucije pri visokim brzinama osvježavanja i podržava HDR. Pogledajte kompresiju streama (DSC) je algoritam brze kompresije s gubitkom koji omogućuje prijenos sličnosti 4K + rezolucija pri brzinama osvježavanja većim od 60 Hz putem DisplayPort 1.4 veze; Srećom, pogoršanje kvalitete slike vrlo je malo, do te mjere da DSC smatrate gotovo bez gubitaka.

Turing također podržava DisplayPort s DSC vezama, ali podržana kombinacija visoke razlučivosti i brzine osvježavanja nešto je bolja od Navi: 4K HDR na 144 Hz - ostalo je isto.

Navi-ov medijski mehanizam jednako je moderan i sofisticiran kao i njegov zaslon. Napredno kodiranje video zapisa (H.264) i Kodiranje video zapisa visoke učinkovitosti (H.265), opet pri visokim rezolucijama i visokim bitrejtima.

Turingov video mehanizam otprilike je isti kao Navi, ali podrška za kodiranje 8K30 HDR mogla bi nekim ljudima preokrenuti ravnotežu u Turingovu korist.

Postoje i drugi aspekti za usporedbu (na primjer, Navi's PCI Express 4.0 sučelje ili Turingov NV Link), ali to su stvarno vrlo mali dijelovi ukupne arhitekture, bez obzira na to kako su odjeveni i na tržištu. To je zato što za veliku većinu potencijalnih korisnika ove jedinstvene značajke neće biti važne.

Usporedba Like-for-Like

Ovaj je članak promatranje arhitektonskog dizajna, značajki i funkcionalnosti, ali izravna usporedba performansi bio bi dobar način za dovršetak takve analize. Međutim, uparivanje Navi čipa u Radeon RX 5700 XT s Turing TU102 procesorom u GeForce RTX 2080 Ti s GeForce RTX 2080 Ti notorno je nepravedno s obzirom na to da potonji ima gotovo dvostruko veći broj shader jedinica zajedno. Međutim, postoji verzija Turingova čipa koja se može koristiti za usporedbu i koja se nalazi u GeForce RTX 2070 Super.

  Radeon RX 5700 XT GeForce RTX 2070 Super
GPU | Arhitektonski Navi 10 | rDNA TU104 | Turinga
postupak 7 nm TSMC 12 nm TSMC
Površina kalupa (mm2) 251 545
Tranzistori (milijarde) 10.3 13.6
Blokiraj profil 2 JI | 4 ACE | 40 PB 5 GPC | 20 TPC | 40 SM
Objedinjena zrna sjenila 2560 SP 2560 ČUDA
TMU 160 160
ROPS 64 64
osnovni sat 1605 MHz 1605 MHz
sat za igru 1755 MHz N / A
pojačani sat 1905 MHz 1770 MHz
Memorija 8 GB 256-bitni GDDR6 8 GB 256-bitni GDDR6
Propusnost memorije 448 GBps 448 GBps
Snaga toplinskog dizajna (TDP) 225 vati 215 W.

Vrijedno je napomenuti da RTX 2070 Super nije 'puni' TU104 čip (jedan od GPC-ova je onemogućen), pa nisu svi ovi 13,6 tranzistori aktivni, što znači da su čipovi približno jednaki u smislu broja tranzistora. U nominalnoj vrijednosti, dva GPU-a izgledaju vrlo slično, pogotovo ako uzmete u obzir samo jedinice sjenčanja, TMU-ove, ROP-ove i glavne memorijske sustave.

Na procesoru Nvidia, SM može obraditi 32 istodobna iskrivljenja, a sa svakim osnovanjem od 32 niti, potpuno učitani GeForce RTX 2070 Super može raditi na 40 960 niti kroz čitav čip; Za Navi, CU može primiti 16 valova po SIMD32 ALU, a svaki val ima 32 niti. Dakle, Radeon RX 5700 XT također može spakirati do 40.960 niti. To se može činiti kao da se to radi čak i ovdje, ali s obzirom na to koliko su različito raspoređeni CU / SM-ovi i Nvidijina prednost uz istodobnu INT i FP obradu, rezultat će uvelike ovisiti o pokrenutom kodu.

Kako će ovo utjecati na razne izvedbe igara, jer će kod 3D mehanizma favorizirati jednu izgradnju u odnosu na drugu, ovisno o tome koje se vrste uputa rutinski šalju GPU-u. To, testirao dvije grafičke kartice:

Sve igre korištene u testiranju programirane su izravno za računala opremljena Radeon-om ili za AMD-ovu GCN arhitekturu putem GCN GPU-a koji se nalaze na PlayStationu 4 ili Xbox One. Moguće je da su neka od nedavnih izdanja pripremljena za promjene na RDNA, ali razlike koje se vide u rezultatima referentne vrijednosti vjerojatnije su zbog prikazivanja motora i načina na koji se postupa s uputama i podacima.

Pa što sve ovo znači? Je li jedna arhitektura zaista bolja od druge? Turing zasigurno nudi veći kapacitet od Navi zahvaljujući Tensor i RT Cores, ali potonji je definitivno konkurentan u smislu izvedbe 3D prikazivanja. Razlike uočene u 12 primjera igre nisu dovoljno jasne da bi se moglo čvrsto procijeniti.

I to je dobra vijest za nas.

posljednje riječi

AMD-ovi Navi planovi najavio To je 2016. i ciljali su na lansiranje 2018., iako nisu puno rekli. Kada taj datum dođe i ode, karta puta promijenio međutim, bilo je jasno da će se Navi proizvoditi na 7nm procesnom čvoru, a dizajn će se usredotočiti na poboljšanje performansi.

To je sigurno bio slučaj, a kao što smo vidjeli u ovom članku, AMD je napravio arhitektonske promjene kako bi mu omogućio da se natječe zajedno s Nvidijinom ekvivalentnom ponudom. Novi dizajn donosi koristi više od samo korisnika računala, jer znamo da će Sony i Microsoft koristiti inačicu čipa u narednom razdoblju. Playstation 5 ve sonraki xbox.

Ako se vratite na početak ovog članka i ponovno pogledate strukturni dizajn Shader Motors-a, ukupnu veličinu matrice i broj tranzistora, očito postoji mogućnost da "veliki Navi" čip izađe na vrh. najnovija grafička kartica; AMD je prilično potvrdio da je to dio njihovih trenutnih planova i ima za cilj poboljšati arhitekturu i proizvodni proces tijekom sljedeće dvije godine.

Ali koji su Nvidijini planovi za Turinga i njegovog nasljednika? Iznenađujuće, tvrtka je malo potvrdila. 2014. godine Nvidia Ažurirana karta GPU-a Planiranje (i postizanje) Pascal arhitekture za lansiranje 2016. godine. u 2017. godini, Tesla najavljuje V100Koristeći Volta arhitekturu, upravo je ovaj dizajn otkrio Turinga 2018. godine.

Od tada su stvari bile prilično tihe i morali smo se oslanjati na glasine i isječke vijesti, koji često govore isto: Sljedeća Nvidijina arhitektura zvat će se Ampere, Proizvođač Samsung Koristi 7nm procesni čvor i predviđen je za 2020. godinu. Osim toga, nema se što drugo nastaviti. Novi čip vjerojatno neće narušiti tradiciju usredotočujući se na skalarne izvršne jedinice, niti je vjerojatno da će odustati od aspekata poput Tensor Cores, jer bi to moglo dovesti do značajnih problema s kompatibilnošću unatrag.

Ipak, možemo razumno pretpostaviti kakav će biti sljedeći Nvidia GPU. Tvrtka je uložila značajnu količinu vremena i novca. traganje zrakai podrška za to samo u igrama povećati; tako da možemo očekivati ​​poboljšanje u RT jezgri, u smislu sposobnosti ili broja po SM-u. Ako jedan 7 nm procesni čvor Ako je to točno, Nvidia će vjerojatno težiti smanjenju napajanja, a ne izravnom povećanju takta, tako da mogu povećati broj GPC-ova. Također je moguće da se preskoči 7 nm i pokrene Nvidia. stan za 5 nm Da biste stekli prednost nad AMD-om.

Izgleda da AMD i Nvidia, diskretna grafička kartica Tržište od Intela, jer znamo da planiraju ponovno ući u ovu industriju, 20 godina pauze. Ovaj novi proizvod (trenutno nazvan xe) moći će se natjecati s Navi i Turingom na istoj razini.

U međuvremenu, Intel je preživio na tržištu GPU-a za ova dva desetljeća izrađujući integriranu grafiku za svoje CPU-ove. Intelov najnoviji GPU Post 11Slična je AMD-ovoj arhitekturi jer koristi vektorske ALU-ove koji mogu obrađivati ​​FP32 i INT32 podatke, ali ne znamo hoće li nove grafičke kartice biti izravan razvoj ovog dizajna.

Ono što je sigurno jest da će sljedećih nekoliko godina biti vrlo zanimljivo jer se tri diva silicijskih struktura nastavljaju boriti za naše novčanike. Novi GPU dizajni i arhitekture potaknut će brojanje tranzistora, veličine predmemorije i mogućnosti sjenera; Navi i RDNA su najnoviji od njih i pokazali su da svaki korak naprijed može napraviti malu razliku.

Prečaci za kupovinu:
  • GeForce RTX 2070 Super uključen Amazon
  • GeForce RTX 2080 Super uključen Amazon
  • GeForce RTX 2080 Ti na Amazon
  • Radeon RX 5700 XT uključen Amazon
  • Radeon RX 5700 uključen Amazon
  • GeForce RTX 2060 Super uključen Amazon
  • GeForce GTX 1660 Super uključen Amazon

Ovaj je članak izvorno objavljen 7. kolovoza 2019. Malo smo je revidirali i povećali u sklopu naše inicijative #ThrowbackThursday.