Unified shader

Unified shader tarkoittaa grafiikkasuorittimen sisäistä rakennetta, jossa jokaisella vaiheella (geometria, verteksi, pikseli, ohjelmointi ym.) on samat ominaisuudet.[1] Tämä tunnetaan nimellä Shader Model 4.0 Direct3D-dokumentaatiossa.[2] Rakenne määrittelee mm. rekisterit ja niiden käyttötarkoitukset shader-ohjelmoinnissa.

Unified Shaderin toimintakaavio

Aikaisemmissa määrittelyissä oli kaksi erityyppistä suoritinyksikköä: pixel shader (pikselivarjostin) ja vertex shader (verteksivarjostin). Nykyisellään shader-yksiköt ovat monipuolisempia ja vähemmän rajoittuneita tehtäviltään. Lisäyksenä mm. compute shader (laskentavarjostin) GPGPU-käyttöön ja suorittimien luonteen muuttuminen.[3][4]

Yhdistettyjen shader-yksiköiden hyöty on parempi kuormanjako ja siten hyötysuhde; kun samat suorittimet toimivat eri tarkoituksissa grafiikkasuorittimen laskentayksiköistä saadaan helpommin parempi suorituskyky irti riippumatta siitä, mikä on tehtävän työn suhde.[5] Yhdistettyjä shader-yksiköitä kutsutaan myös stream-suorittimiksi (AMD) tai CUDA-yksiköiksi (Nvidia).[6]

Useimmissa grafiikkasuorittimissa Unified Shader -mallin noudattaminen tarkoittaa myös suorittimen ohjelmoitavuutta OpenCL- tai CUDA-tuella.

Mikroarkkitehtuurit

Unified Shader -malli ei itsessään määrittele suorittimen mikroarkkitehtuuria. Mallin toteuttavia mikroarkkitehtuureja ovat:

Katso myös

Lähteet

Käännös suomeksi
Tämä artikkeli tai sen osa on käännetty tai siihen on haettu tietoja muunkielisen Wikipedian artikkelista.
Alkuperäinen artikkeli: en:Unified shader model
🔥 Top keywords: