Procesoare grafice: detalii tehnice

Pipelines / Shaders (Vertex / Geometry / Pixel) sau CUDA cores

In esenta aceastea sunt un fel de mini-procesoare specializate in calcule matematice/geometrice care duc greul in procesarea informatiei grafice. Ele transforma instructiunile grafice 3D in imaginea care ulterior se afiseaza pe ecran. Cu cat un procesor grafic are mai multe shadere cu atat poate sa proceseze mai multa informatie si este deci mai puternic. Astfel, shaderele sunt un element definitoriu al performantelor pe care le ofera un procesor grafic/placa video.

Shaderele sunt intotdeauna grupate in “clustere”, care sunt practic unitatea de baza a arhitecturii unui procesor grafic. Exemplu: Arhitectura Nvidia pentru seria 400M si 500M foloseste clustere de cate 32 de shadere. Dar pot exista placi video care folosesc doar jumatate de cluster.

AMD (ATI) vs Nvidia

Pentru a evita confuziile in compararea placilor video AMD cu cele Nvidia, trebuie sa facem o mentionare foarte importanta. Nvidia foloseste intotdeauna shadere “puternice” sau complete. Acestea sunt shadere care pot sa faca toate tipurile de calcule specifice acestora. AMD in schimb foloseste shadere mai simple, mai mici si care sunt specializate pe un anumit tip de calcul geometric. De aceea, procesoarele grafice AMD au in fisa lor trecute mult mai multe shadere in comparatie cu procesoarele grafice Nvidia.

Astfel, pana la seria 6000 de la AMD (inclusiv), se poate spune in linii mari ca 5 shadere AMD sunt echivalentul a unui shader Nvidia. Exemplu: o placa video ATI Mobility Radeon 5650 cu 400 de shadere ar fi de fapt echivalentul unei placi video Nvidia cu 80 de shadere.

Se pare ca de la seria 7000 incolo, AMD isi va schimba putin arhitectura si astfel 4 shadere AMD vor fi echivalente cu un shader Nvidia.

Nvidia foloseste deseori in loc de denumirea clasica de “shader” denumirea de CUDA core. In esenta sunt acelasi lucru, doar ca tehnologia CUDA permite folosirea shadere-lor si la alte activitati diferite de cele de procesare grafica. Exemple de astfel de activitati ar fi acelerarea interactiunilor fizice, a calculelor pur matematice folosite in cercetare sau decriptarea de parole.

In cazul placilor video Intel, shaderele poarta  denumirea de “Execution Units” sau “EU” cores.

Arhitectura Fermi
In imagine este interiorul unui procesor grafic care foloseste arhitectura Fermi de la Nvidia (GTX 480 / GTX 480M / GTX 580 )

Texture mapping unit (TMU)

Acestea sunt tot niste unitati de calcul specializate care lucreaza impreuna cu shaderele si a caror treaba este sa calculeze ce culoare trebuie sa aiba fiecare pixel in functie de textura aplicata de programul/jocul 3D.

ROP – Render Output Unit – Raster Operations Pipeline

Aceste elemente din arhitectura unei placi video au rolul de a scrie si de a citi informatia de pe memoria video. Tot ele sunt responsabile pentru forma finala pe care o ia imaginea pe ecran, fiind ultimul stadiul pe care il efectueaza placa video in procesarea informatiei. Daca placa video dispune de multa memorie video, atunci va avea nevoie de multe unitati de acest gen pentru a putea folosi memoria video disponibila in mod eficient.

Scheme arhitecturii
Schema arhitecturii AMD folosita in placile video pentru laptopuri 6970M si 6950M (stanga) si schema arhitecturii Nvidia folosita in placile video GTX 480M / GTX 485M (dreapta)

Bus type

Acesta defineste tipul de memorie video pe care il poate folosi procesorul grafic. Poate sa fie GDDR2 (DDR2), GDDR3 (DDR3) sau GDDR5.

Bus width

Aceasta caracteristica reprezinta cantitatea de memorie pe care o poate accesa placa video pe ciclu de procesare. Cu cate este mai mare, cu atat placa video poate accesa mai multa memorie in acelasi timp. Astfel, un Bus mare de 256-bit sau 512-bit va pune foarte bine in valoare o cantitate mare de memorie video. De aceea, placile care au astfel de Bus-uri se bucura de 1 – 1.5 GB de memorie video. Majoritatea placilor video pentru laptopuri au Bus-uri de 128-bit si in general 512MB -768 MB sunt mai mult decat suficienti.

O alta consecinta a acestei specificatii tehnice este cantitatea de memorie care o intalnim la o placa video. Intotdeauna cantitatea de memorie este un multiplu al Bus-ului de memorie. Astfel o placa video cu un Bus de 384-bit nu va avea niciodata 1 GB de memorie video, fie va avea 768 MB fie 1536 MB.

DirectX / Shader Model

O explicatie simplista ar fi ca DirectX reprezinta un set de instructiuni care mediaza interactiunea dintre programe (in cazul de fata jocurile 3D) si componentele hardware care executa aceste programe. Fiecare versiune noua de DirectX are niste seturi noi de instructiuni, seturi care de multe ori necesita un nou gen de hardware care sa stie sa le interpreteze. Arhitectura hardware care suporta noile instructiuni poarta denumirea de “Shader Model”. Astfel placile video cu Shader Model 3.0 stiu sa foloseasca instructiunile implementate pana la DirectX 9.0, cele cu Shader Model 4.0 cele pana la DirectX 10.0, cele cu Shader Model 5.0 pana la DirectX 11 si asa mai departe.

Ar mai fi de mentionat ca fiecare joc este facut pe baza anumitor instructiuni DirectX si deci nu va putea rula decat daca placa video are implementata in arhitectura ei “Shader Model”-ul minim necesar acelei versiuni de DirectX.

Memoria video

Desi nu are aceeasi importanta ca procesorul grafic in a defini performantele grafice ale unei placi video, ea ramane totusi esentiala pentru functionarea acesteia. In prezent, pentru placile video dedicate exista doi mari producatori de memorii video: Samsung si Hynix. In cazul placilor video integrate nu este intotdeauna nevoie de memorie video separata, aceste placi folosind o parte din memoria RAM a laptopului (shared memory).

Memoria video dedicata este de cele mai multe ori numita GDDR desi „G”-ul din fata poate lipsi uneori. In momentul de fata gasim trei variante pe piata : GDDR3 si GDDR5 (in laptopurile mai vechi se poate intalni si DDR2). Diferenta dintre memoriile GDDR este viteza. Astfel, memoriile GDDR3 functioneaza la o viteza aproape dubla fata de memoriile DDR2 iar memoriile GDDR5 sunt sensibil mai rapide si consuma mai putin curent decat memoriile GDDR3.

In functie de tipul de memorie folosit si de performantele procesorului grafic, se poate spune cu aproximatie cam de cata memorie video are nevoie o placa video.

Astfel, procesoarele grafice de performante reduse, din clasa de jos (entry level), nu pot sa proceseze un volum mare de informatie si drept urmare nu au nevoie de memorie multa sau rapida. De cele mai multe ori, acestea folosesc memorie video de tip DDR2, desi mai nou au inceput sa foloseasca si GDDR3. In cazul in care folosesc DDR2, 256MB de memorie video sunt de obicei suficienti, desi in unele cazuri si 512MB pot fi de ajutor. O cantitate mai mare de memorie video DDR2 ar fi o risipa, pentru ca nici cele mai solicitante aplicatii nu vor ajunge sa o foloseasca, placa fiind limitata de performantele procesorului grafic. In cazul placilor video de nivel jos dar mai noi, care folosesc GDDR3, se poate uneori ca producatorii sa opteze pentru 1024MB (1 GB) de memorie video, dar de cele mai multe ori 512MB sunt mai mult decat suficienti.

Pentru procesoarele grafice de performanta medie, se folosesc aproape intotdeauna memorii video GDDR3. In acest caz 512MB sunt de cele mai multe ori suficienti, dar in cazuri exceptionale si 768MB pana la 1024MB (1 GB) pot fi utili. Pentru o placa video din gama medie, o memorie video mai mare de 1024MB ar fi o risipa de resurse si bani.

Pentru clasa de varf, a devenit aproape o regula ca placile video sa aiba ce putin 1024MB de memorie GDDR3. Mai nou, aceste placi folosesc memorie GDDR5 iar ultimele aparitii folosesc chiar si 2048MB (2 GB) de memorie video. Chiar si pentru aceste placi, alocarea unei memorii video mai mari de 2048MB ar fi inutila, nivelul optim de memorie video fiind in jur de 1024MB – 1536MB.

Procesoare grafice: Nvidia

Nvidia sunt unii dintre cei mai mari si cei mai vechi producatori de procesoare grafice din lume, ei fiind lideri ai segmentului mediu si de varf. In general placile video facute cu procesoare grafice Nvidia sunt un pic mai performante fata de oferta competitiei dar si putin mai scumpe.

In 2010 Nvidia a intampinat dificultatii in a-si mentine cota de piata, motivul principal fiind faptul ca arhitectura procesoarelor lor grafice nu reuseau sa obtina un raport foarte bun performanta/consum de curent (raportul este absolut esential cand vine vorba de componente destinate laptopurilor). Din 2011 insa, datorita imbunatatirilor si optimizarilor facute, Nvidia a reusit sa corecteze aceasta situatie si a intrat din nou pe trend ascendent, revenind in topul preferintelor atat ale producatorilor de laptopuri cat si ale consumatorilor.

Nvidia este bine cunoscuta pentru incercarile sale de a oferi mereu o experienta noua in materie de jocuri pe computer. Printre aceste incercari se numara tehnologiile 3D Vision si PhysX.

Despre tehnologia 3D Vision puteti citi mai multe aici: Placi video – Generalitati. Pe scurt, tehnologia 3D Vision permite utilizatorului, cu ajutorul unor ochelari speciali si a unui monitor cu rata de refresh de 120 Hz,  sa aiba o experienta complet 3D a jocurilor pe computer, asemanatoare cu cea a filmelor 3D sau a televizoarelor 3D.

Tehnologia PhysX reprezinta de fapt un set de instructiuni pe care programatorii pot sa le incorporeze in jocurile 3D si care permit o redare mult mai reala a efectelor fizice, cum ar fi fluide, explozii, geamuri, materiale textile, etc. Desi initial Nvidia a permis ca aceste instructiuni sa poate fi executate de orice placa video, inclusiv de cele ale competitorilor sai, ulterior a renuntat la aceasta politica. Acest lucru a determinat ca putine jocuri sa implementeze functiile PhysX. Mai mult, functia PhysX necesita ca o parte din resursele placii video sa fie alocate calcularii proceselor fizice. Pentru placile video din clasa medie, care oricum pentru o experienta flluida a jocurilor necesita ca detaliile grafice sa fie medii, activarea functiei PhysX necesita o reducere si mai mare a detaliilor grafice. De aceea, pentru a putea folosi aceasta functie este nevoie de placi video destul de puternice, de obicei din gama de varf.

Batman Arkham Asylym
Acelasi joc cu PhysX activat la maxim (stanga), cu accelerare PhysX moderata (centru) si fara PhysX (dreapta) - mai multe imagini la : http://physxinfo.com/data/vreview_batman.html

De la Nvidia ar mai fi de mentionat tehnologia Optimus, care permite laptopului sa schimbe intre placa video dedicata si cea integrata pentru a economisi curent, atunci cand laptopul este alimentat de la baterie. Mai multe informatii despre aceasta tehnologie puteti gasi aici: Placi video – Generalitati .


GTX 480M
O placa video Nvidia GTX 480M

Specificatii in functie de denumire (2011)

In denumirea unui procesor grafic Nvidia se afla destul de multe informatii pentru a sti in ce an a fost lansat si ce nivel de performanta are.

Pentru a exemplifica acest lucru vom lua in discutie procesorul grafic „GeForce GT 540M”.

Denumirea „GeForce” este un nume de brand, fiind specific placilor video Nvidia dedicate PC-urilor (laptop sau desktop). In afara de denumirea “Geforce” exista si denumirea “Quadro” care se foloseste la placile video dedicate modelarii 3D (cu softuri precum 3D Studios Max, Maya,  CAD, etc.).

Setul de litere „GT” este un fel de indicator al gamei in care se incadreaza placa video, dar nu unul foarte exact.
G (mai nou nu se mai foloseste deloc) – este pentru placi de nivel foarte jos, un pic mai performante decat un procesor grafic integrat.
GT – este pentru procesoare grafice din clasa medie.
GTS (rar folosit) – este pentru procesoare grafice cu performante sensibil peste medie, dar care sunt inca sub varful de gama.
GTX – este un prefix rezervat placilor din varful de gama.

„540M” – este numele procesorului grafic si care ofera informatii detaliate despre acesta.

5 40 (prima cifra) reprezinta generatia din care face parte procesorul.
Astfel, 1 este pentru generatia din prima jumatate a lui 2009, 2 este pentru generatia din a doua jumatate a lui 2009, 3 pentru generatia din prima jumatate a lui 2010, 4 este pentru generatia din a doua jumatate a lui 2010, 5 este pentru generatia din 2011, si asa mai departe.
Pentru generatiile care s-au lansat inainte de 2009, denumirile sunt un pic altfel si anume: 9 pentru generatia din 2008, 8 pentru generatia din 2007, 7 pentru generatia din 2006 si asa mai departe.

5 4 0 ( a doua cifra) reprezinta nivelul de performanta al placii video.
O cifra cumprinsa intre 0 si 1 (inclusiv) reprezinta un nivel de performanta foarte scazut, dar totusi putin mai bun decat al unui procesor grafic integrat.
Daca numarul este intre 2 si 5 (inclusiv) reprezinta un nivel de performanta mediu si cu cat acest numarul este mai mare cu atat si performantele sunt mai mari.
Pentru numere cumprinse intre 6 si 9 (inclusiv) vorbim deja de varful de gama si de placi video cu performante deosebite.

Pentru modelele lansate inainte de 2009 (adica 9000,8000,7000 etc.), codificarea distributiei pe scara performantei este un pic diferita: 1-4 – nivelul de jos, 5-7 – nivelul mediu, 8-9 – varful de gama.

54 0 (a treia si ultima cifra) este un fel de sub-categorie si rar ia alta valorea decat 0. Daca totusi se intampla sa nu fie 0, atunci este de obicei 5 si reprezinta o placa video usor imbunatatita fata de modelul de baza care are 0.

„M”-ul de la final indica faptul ca vorbit de un procesor grafic pentru laptopuri si nu pentru desktopuri.


Nvidia 540M
Un procesor grafic Nvidia GT 540M

Generatia 500M (2011)

In general Nvidia lanseaza o noua generatie de placi video cam o data pe an, sau mai bine zis o data la 9 luni. Ultima generatie de placi video pentru laptop lansata de Nvidia, seria 500M, a fost lansata in ianuarie 2011. Ea ar trebui sa se gaseasca pe piata cam pana in toamna lui 2011 cand ar trebui sa se lanseze seria 600M de procesoare grafice Nvidia.

Seria 500M este produsa la TSMC folosind procesul de fabricatie de 40nm (la fel ca si generatia precedenta – 400M). Cu toate aceastea, spre deosebire de generatia precedenta care nu a stralucit deloc la raportul consum de curent/performanta, Nvidia a facut eforturi mari pentru a optimiza arhitectura procesoarelor sale grafice, astfel incat acestea au acum un raport consum de curent /performanta sensibil mai bun. Acest lucru combinat cu perfectionarea procesului de fabricatie a dus la cresterea performantelor si reducerea consumului de curent (caldura degajata). Astfel generatia 500M este cam cu 10% mai rapida fata de  generatia precedenta (400M) si ofera o usoara reducere a consumului de curent.

Toate procesoarele grafice din seria 500M suporta DirectX 11 si HDMI 1.4a.

Structura ofertei Nvidia la momentul actual (2011):

Gama de jos (entry level) Gama medie (mainstream) Varful de gama (high-end)
GeForce 315M GeForce GT 520M GeForce GTX 460M
GeForce 410M GeForce GT 525M GeForce GTX 470M
GeForce GT 540M GeForce GTX 485M
GeForce GT 550M
GeForce GT 555M

Gama de jos – majoritatea jocurilor noi vor putea fi jucate cu setarile la minim sau chiar deloc / Gama medie – orice joc nou ar trebui sa ruleze fara probleme dar cu detaliile grafice setate la mediu / Gama de varf – jocurile nu reprezinta o problema pentru aceste placi care de multe ori pot sa le ruleze la rezolutii mari si cu toate setarile grafice activate



Specificatiile tehnice ale procesoarelor din oferta Nvidia pentru prima jumatate a lui 2011:

Numele Numar de linii de procesare (shadere) Frecv. Grafica Frecv. shadere Frecventa Memorie Bus memorie Tip Memorie DirectX TDP
1 GTX 485M 384 575 MHz 1150 MHz 750 MHz 256-bit GDDR5 11 100W
2 GTX 470M 288 550 MHz 1100 MHz 750 MHz 192-bit GDDR5 11 75W
3 GTX 460M 192 675 MHz 1350 MHz 625 MHz 192-bit GDDR5 11 65W
4 GT 555M 144 590 MHz 1180 MHz 900 MHz 192-bit GDDR3 11
5 GT 550M 96 740 MHz 1480 MHz 900 MHz 128-bit GDDR3 11
6 GT 540M 96 672 MHz 1344 MHz 900 MHz 128-bit GDDR3 11 35W
7 GT 525M 96 600 MHz 1200 MHz 900 MHz 128-bit GDDR3 11 25W
8 GT 520M 48 740 MHz 1480 MHz 800 MHz 64-bit GDDR3 11 17W
9 410M 48 575 MHz 1150 MHz 800 MHz 64-bit GDDR3 11 15W
10 315M 16 606 MHz 1212 MHz 800 MHz 64-bit GDDR3 10.1