Intel GPU Architecture, Differences vs NVIDIA și AMD

Intel GPU Architecture, Differences vs NVIDIA și AMD

Nu asociem adesea Intel marca cu GPU-uri sau cipuri grafice, ceea ce se datorează faptului că Intel a rămas până acum pe segmentul subperformant. În care sunt incluse GPU-urile integrate în procesor și cele entry-level în care nu este necesară o putere mare. Ceea ce înseamnă că pentru mulți nu are același nivel de interes ca NVIDIA și AMD GPU-urile, însă arhitectura grafică Intel are și puncte interesante, pe care le vom defini mai jos.

Intel a fost întotdeauna al treilea în luptă atunci când vine vorba de GPU-uri, la urma urmei nu este treaba lor principală și este vorba despre ceva mai mult decât ceea ce fac, care sunt CPU. Deși în ultimii ani au crescut resursele și au o serie de GPU-uri pentru jocuri pe rampa de pornire. Cu toate acestea, arhitectura sa are o serie de puncte de diferențiere în ceea ce privește concurența sa.

Unitatea de execuție, baza GPU-urilor Intel

Intel EU vieja

Pentru a înțelege diferența de organizare sau arhitectură a procesoarelor grafice Intel în comparație cu restul, trebuie să înțelegem acest lucru în timp ce se află într-un NVIDIA sau AMD GPU unitatea shader este unitatea minimă, în cazul Intel este unitatea de execuție. in ce consta mai exact? Fiecare unitate de execuție este un procesor conceput pentru paralelism la nivelul firului de execuție sau TLP complet. Prin urmare, are o unitate de control, înregistrările și unitățile de execuție corespunzătoare. Care sunt două unități SIMD de 4 ALU cu virgulă mobilă pe 32 de biți și alte 4 de numere întregi, care sunt comutate și acceptă SIMD peste registru.

Datorită SIMD-ului din registru, subdivizând ALU-urile și registrele lor asociate, acestea pot lucra cu dublul numărului de operanzi pe ciclu de ceas pentru fiecare subdiviziune realizată în precizie. Astfel, pot efectua de două ori mai multe operații în virgulă mobilă pe 16 biți decât 32 de biți, dar de patru ori mai multe dacă sunt pe 8 biți. În ceea ce privește funcționalitatea unităților de execuție, acestea sunt însărcinate cu executarea programelor Shader, la urma urmei sunt echivalentul unităților SIMD ale GPU-urilor Intel și AMD și, prin urmare, sarcina lor este aceeași.

Unități de execuție intel Xe

În Intel Xe, echipa Raja Koduri a făcut o schimbare importantă în unitatea de control, deoarece acum două unități de execuție au aceeași unitate de control. O schimbare care amintește foarte mult de cea pe care AMD a făcut-o în arhitecturile sale RDNA în care două unități de calcul sunt grupate într-un singur grup de lucru. Ceva care nu ar trebui să ne surprindă prin exodul de creiere de la AMD la Intel. Această modificare a însemnat că unitatea de control a fost actualizată, ceea ce reprezintă cu siguranță o schimbare completă a ISA internă a GPU-urilor Intel pentru una mult mai eficientă.

Sub-Slice, unitatea Shader

Hotchips Intel Architecture Xe (8)

Echivalentul unităților shader pe care le au GPU-urile NVIDIA și AMD, am văzut deja că nu sunt Unitățile de Execuție, ci mai degrabă Sub-Slice-urile. În cadrul lor veți găsi unitățile de execuție grupate. Deoarece fiecare unitate de execuție este un subset al unui subslice, iar Slice este superset al subslice, îl vom vedea mai târziu. Fiecare subslice găzduiește 16 unități de execuție în interior, ceea ce se traduce în 64 de ALU-uri FP32 și 64 de ALU-uri întregi în total. O cifră care face ca aceste unități să fie echivalente în putere brută de calcul cu echivalentele lor AMD, Unități de calcul.

În ceea ce privește restul elementelor pe care le putem găsi în interiorul sublice, acestea sunt clasicele unei unități de acest tip, deși Intel folosește o nomenclatură diferită decât de obicei. Cum este cazul așa-numitului 3D Sampler, care este încă unitatea clasică pentru manipularea și filtrarea texturilor, pur și simplu Intel a dat un alt nume acestei unități clasice de funcții fixe care se găsește în toate procesoarele grafice 3D încă de la începuturile sale.

Hotchips Intel Architecture Xe (10)

Cu toate acestea, Media Sampler este o piesă mult mai interesantă, deoarece este unic pentru GPU-urile Intel, este compus dintr-o serie de unități de funcții fixe, care sunt următoarele:

  • Motor Motion Video oferă estimarea mișcării pixelilor, care este cheia pentru codificatoarele video.
  • Adaptive Video Scalar este o unitate care execută filtre de netezire a imaginilor.
  • De-Noise / De-Interlace este o unitate însărcinată cu reducerea zgomotului dintr-o imagine pe de o parte și, pe de altă parte, pentru transformarea videoclipului în modul intercalat în modul progresiv.

Începând cu Intel Xe, Media Sampler a fost retras din subslice și a devenit o unitate independentă în sine. Care continuă să fie o piesă diferențială în ceea ce privește design-urile NVIDIA și AMD.

Slice, o altă piesă obișnuită în GPU-uri

Hotchips Intel Architecture Xe (7)

Slice în arhitectura GPU Intel este echivalentul Shader Engine sau GPC în cazul NVIDIA. Denumiri diferite pentru o organizație de unități unele de altele. În interior sunt subsecțiunile și o serie de unități de funcții fixe, care sunt comune cu GPU-urile altor companii.

Deși din nou nomenclatura poate fi confuză, de exemplu în restul arhitecturilor unitatea raster este de obicei unificată și cea care generează tamponul de adâncime, ambele elemente apar în faza raster într-o unitate comună în cazul NVIDIA și AMD, dar Intel o face separat.

Același lucru este valabil și pentru Pixel Dispatch și Pixel Back-End. Funcțiile unităților POR care sunt efectuate aici de două elemente diferite. La urma urmei, sarcina care trebuie îndeplinită în ambele cazuri este aceeași.

Ierarhia cache Intel GPU

GPU Intel Caches

Unul dintre punctele de diferențiere ale arhitecturii comune a procesorelor grafice Intel, în comparație cu AMD și NVIDIA, este tocmai modul în care este organizată ierarhia cache. În cazul AMD, constatăm că RX 6000 are o ierarhie de patru niveluri dacă luăm în calcul noul incorporat Cache infinit. În cazul NVIDIA, ierarhia cache-urilor este diferită de cea a Intel și AMD, dar nu dorim să ne concentrăm asupra acestui articol, deoarece nu este dedicat acestora.

Diagrama din această secțiune indică comunicarea internă în cadrul GPU, atât la nivelul subslice, cât și la nivelul slice. În cazul subslice, avem memoria clasică de date și memoria locală partajată. Dar, spre deosebire de GPU-urile NVIDIA și AMD, Intel a adăugat în mod tradițional o memorie cache L2 suplimentară care poate fi accesată atât de Sampler 3D, cât și de Sampler Media. Ceea ce face ca memoria cache L3 a GPU-ului să fie memoria cache GPU de nivel superior.

Arhitectura Intel Xe GPU

Diferențierea dintre memoria cache L1 pentru date și, prin urmare, pentru unitățile de execuție și L2 pentru texturi s-a modificat în Intel Xe, unde ambele au fost combinate într-o singură memorie cache L1 de date și texturi. Deci, acum au o configurație complet standardă în comparație cu GPU-urile competitive.

O altă modificare este în ceea ce privește memoria cache L3 sau ultimul nivel. GPU-urile contemporane acceptă așa-numitul Tiled Caching, care constă în faptul că acestea se rasterizează după dale, dar o fac pe memoria cache de ultimul nivel și există pericolul ca datele să cadă în memorie, unde crește costul energetic al recuperării. Au crescut de la 3 MB la 16 MB.