280M

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.

2 thoughts on “Procesoare grafice: detalii tehnice”

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>