Zadání

Grafické architektury. Základní model, paralelní architektury (8×8, Cohen– Demetresku, Pixel Planes, Pixel Flow, .). Architektury „sort–first , „sort– last , „sort–middle . Akcelerátory a grafické procesory.

Základní model

Pracovní stanice:
3D proudová architektura:
Konceptuální model:

Paralelní architektury

Paralelní řešení obrazové úlohy:

  • dělený prostor obrazu
  • dělený prostor objektů
  • dělené funkce
  • víceúrovňové dělení

Dělení v objektovém prostoru

Procesory: přiděleny podmnožiny objektů, řeší úplné zobrazení zpracovávaných objektů
Problém: variace doby zpracování objektu, nerovnoměrná zátěž procesorů
Speciální případ: dělení v parametrickém prostoru, parametrické pláty jsou před vybarvením rozloženy např. na trojúhelníkovou síť
Časová složitost: P.O(N/k) - k procesorů zpracovává současně k primitiv, každé z primitiv vyžaduje řešení max. P pixelů

Dělení v obrazovém prostoru

Jednotlivým procesorům přiděleny části obrazového prostoru - pixel, řádka, souvislá část obrazového prostoru (skupina řádek, obdélníkové okno)
Distribuce objektů:
(1) všechny objekty jsou zaslány současně všem
procesorům, nebo
(2) předem roztříděny do podmnožin pro jednotlivé
procesory
Protože objekt pravděpodobně pokryje více oblastí děleného obrazového prostoru, musí být obecně zpracován několika procesory.
Časová složitost: N.O(P/k) - obrazový prostor dělen mezi k procesorů na části P/k pixelů, doba zpracování roste lineárně s počtem primitiv N

8x8 (Clark-Hanah)

Primitiva: pixel, vektor, trojúhelník, lichoběžník
Viditelnost: paměť hloubky
Stínování: konstantní, Gouraud
Vyhlazování: – Dělení: Dělení obrazového prostoru na 64 shodných částí.
Topologie: 2 úrovňový strom s uniformním větvením 1:8
Řízení: řádkové i sloupcové procesory pracují podle autonomních obvykle shodných řídících programů
Paralelismus: sloupcové procesory – SISD; řádkové procesory – SIMD

Cohen–Demetresku

Primitiva: mnohoúhelníky
Viditelnost: paměť hloubky
Stínování: konstantní, Gouraud, Phong
Vyhlazování: –, možnost úpravy pro gz-bufer, kompozice, A-bufer
Dělení: v prostoru objektů; P pixelů a N objektů zpracováno k procesory při nejvýše P.(N/k) operacích
Topologie: cyklus procesorů uzavřený přes obrazovou paměť
Řízení: decentralizované; řeší autonomně rasterizaci objektu; volný procesor přebírá popis objektu od nadřazeného systému.
Paralelismus: MIMD (specializace procesorů )

Kedem-Ellis

Primitiva: lineární a kvadratické poloprostory
Viditelnost: sledování paprsku
Stínování: – Vyhlazování: – Dělení: kombinace funkčního dělení a dělení objektového prostoru
(1) vyhodnocení průsečíku paprsku s primitivem
(2) vyhodnocení CSG operace na intervalu
Topologie: binární strom
Řízení: decentralizované, synchronní komunikace s potvrzovacím protokolem
Paralelismus: SIMD

SAGE

Primitiva: řádkové úseky
Viditelnost: paměť hloubky
Stínování: konstantní, Gouraud
Vyhlazování: – Dělení: d. obrazového prostoru, 1 procesor/sloupec pixelů
Topologie: sériově řazené pixelové procesory
Řízení: synchronně podle vnějšího časování
Paralelismus: SIMD - každý pixelový procesor pracuje s daty jiného řádkového úseku

Pixel Planes

Primitiva: úsečky, trojúhelníky, konvexní n-úhelníky
Viditelnost: paměť hloubky
Stínování: konstantní, Gouraud
Vyhlazování: ne, možná modifikace se subpixelovým vzorkováním
Dělení: Kombinace funkčního dělení a dělení obrazového prostoru
Topologie: 2D-pole
Řízení: centralizované; instrukce a data generuje PP-překladač shodně pro všechny PP-buňky
Paralelismus: SISD

SGI SuperWorkstation

Primitiva: trojúhelník, lichoběžník
Viditelnost: paměť hloubky
Stínování: konstantní, Gouraud
Vyhlazování: - A-bufer
Dělení: funkčního dělení a dělení obrazového prostoru, specializované procesory - geometrický p. (5x), p. polygonů a výpočet sklonu, paralelně 7 hranových p., obrazový prostor: 5 x 4 obrazové p.
Topologie: 2D-pole
Řízení: decentralizované
Paralelismus: SIMD

Pixel Flow

Algoritmus řízení:
1. Geometrický procesor v každém R bloku transformuje přidělená primitiva a setřídí je podle 128×128 pix. oblastí obrazu.
2. Rasteriser spočte hodnoty pixelů pro všechna primitiva v oblasti a pro 1 vzorek antialising. jádra.
3. Poté, co všechny rasterizery dokončí oblast (krok 2), je složena přes kompoziční síť a předána do stínovače.
4. Kroky (2) a (3) jsou opakovány pro každý vzorek a pro všechny oblasti. Lze využít proudové řazení (překrytí) rasterizace a kompozice.

Klasifikace grafických architektur

Evaluátory - jednotka spracovania vstupných príkazov (skript)

  • Operácie nad vrcholmi - geometrická jednotka pracujúca s vrcholmi
  • Rasterizácia - rasterizačná jednotka
  • Textúrovanie - textúrovacia jednotka
  • Operácie nad fragmentmi - operácie na úrovni pixelov
  • Kompozícia - kompozícia výstupnej snímky

Podle místa, kde nastává třídění:

Architektura "sort–first"

Třídí 3D primitiva.

Architektura "sort–last"

Třídí fragmenty.

Architektura "sort–middle"

Třídí 2D primitiva.

Akcelerátory a grafické procesory

Grafický procesor

GPU - „grafický procesor“ je výpočetní jádro grafické karty. Obsahuje řadič paměti, unifikované shadery, TMU jednotky, ROP jednotky a další. Zpracovává 3D geometrii na 2D obraz, zobrazitelný na zobrazovacím zařízení.

  • Unifikované shadery - moderní náhrada za pixel shadery a vertex shadery. Každá firma má svoji vlastní architekturu shaderů. Jsou programovatelné a díky tomu nemusí počítat pouze zobrazovatelná data, ale i výpočty pro vědu a další. NVIDIA má každý unifikovaný shader plnohodnotný, AMD používá 4D shadery (4 menších shaderů jako celek, dříve 5D).
  • Řadič pamětí - stará se o komunikaci mezi grafickou pamětí a GPU. NVIDIA i AMD podporují až GDDR5.
  • TMU jednotky (Texture mapping unit) - mapuje textury na objekty.
  • ROP jednotky (Render Output unit) - zabezpečuje výstup dat z grafické karty.
Grafický akcelerátor

Grafický akcelerátor (urychlovač) je jednotka v osobním počítači či herní konzoli, která přebírá funkce hlavního procesoru pro grafické operace, odlehčuje hlavnímu procesoru. Umožňuje paralelní zpracování. Je vybaven vlastní pamětí.

S příchodem OpenGL API a obdobných funkcí v DirectX se k možnostem GPU přidaly i programovatelné jednotky shader. Každý pixel či vertex může být zpracován krátkým programem předtím, než je zobrazen. Moderní GPU mají podporu i pro 3D počítačovou grafiku, obsahují funkce pro renderování, podporu digitálního videa a další.

Zdroj

Sochor, Jiří. PA157 - Seminar on Computer Graphics Architectures, slajdy. 2012. Fakulta informatiky, Masarykova Univerzita. Brno.
Sobota, Branislav. Vizualizácia a grafické architektúry, slajdy. 2013. Katedra počítačov a informatiky, FEI TU, Košice. Dostupné: http://hornad.fei.tuke.sk/predmety/svr/doc/SVR0313_VIZUALIZACIA_GRAF_ARCHITEKTURY.pdf Wikipedie: Otevřená encyklopedie: Grafická karta [online]. c2013 [citováno 16. 06. 2013]. Dostupný z WWW: <http://cs.wikipedia.org/w/index.php?title=Grafick%C3%A1_karta&oldid=10413181>
Wikipedie: Otevřená encyklopedie: GPU [online]. c2013 [citováno 16. 06. 2013]. Dostupný z WWW: <http://cs.wikipedia.org/w/index.php?title=GPU&oldid=10415575>

mgr-szz/in-gra/14-gra.txt · Poslední úprava: 2020/04/12 16:56 (upraveno mimo DokuWiki)
Nahoru
CC Attribution-Noncommercial-Share Alike 4.0 International
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0