Jednotka pro zpracování grafiky - Graphics processing unit

Součásti GPU

A grafický procesor ( GPU ) je specializovaný elektronický obvod navržen tak, aby rychle manipulovat a alter paměti pro urychlení vytváření obrazů v rámcové vyrovnávací paměti určen pro výstup do zobrazovacího zařízení . GPU se používají ve vestavěných systémech , mobilních telefonech , osobních počítačích , pracovních stanicích a herních konzolách .

Moderní GPU jsou velmi efektivní při manipulaci s počítačovou grafikou a zpracování obrazu . Jejich vysoce paralelní struktura je činí účinnějšími než univerzální centrální procesorové jednotky (CPU) pro algoritmy, které zpracovávají velké bloky dat paralelně. V osobním počítači může být GPU přítomen na grafické kartě nebo vložen na základní desce . V některých CPU jsou vloženy do matrice CPU .

V 70. letech 20. století termín „GPU“ původně znamenal grafickou procesorovou jednotku a popisoval programovatelnou procesorovou jednotku nezávisle pracující na CPU a zodpovědnou za grafickou manipulaci a výstup. Později, v roce 1994, Sony použilo termín (nyní zkratka pro grafickou procesorovou jednotku ) v odkazu na konzolu PlayStation konzoly Toshiba navrženou společností Sony GPU v roce 1994. Tento termín propagovala společnost Nvidia v roce 1999, která prodávala GeForce 256 jako „první na světě“. GPU “. Byl představen jako „jednočipový procesor s integrovanou transformací, osvětlením, trojúhelníkovým nastavením/ořezáváním a vykreslovacími motory“. Konkurenční ATI Technologies vytvořil termín „ jednotka vizuálního zpracování “ nebo VPU vydáním Radeonu 9700 v roce 2002.

Dějiny

70. léta 20. století

Arkádové systémové desky používají specializované grafické obvody od 70. let minulého století. V počátečním hardwaru pro videohry byla RAM pro vyrovnávací paměti snímků drahá, takže video čipy při skenování displeje na monitoru skládaly data dohromady.

K oživení grafiky framebufferu CPU pro různé arkádové hry ze 70. let od Midway a Taito byl použit speciální obvod barelového měniče , například Gun Fight (1975), Sea Wolf (1976) a Space Invaders (1978). Namco Galaxian pasáž systém v roce 1979, specializující se používá grafický hardware podporující RGB barev , multi-barevný skřítci a tilemap pozadí. Galaxský hardware byl široce používán během zlatého věku arkádových videoher herními společnostmi jako Namco , Centuri , Gremlin , Irem , Konami , Midway , Nichibutsu , Sega a Taito .

Mikroprocesor Atari ANTIC na základní desce Atari 130XE

Na domácím trhu používala Atari 2600 v roce 1977 video řadič s názvem Adaptér pro televizní rozhraní . Na Atari 8-bitové počítače (1979) měla Antić , video procesor, který vykládáno pokyny popisující „seznam zobrazení“ -The cesta map skenování linky specifické bitmapové nebo režimy zadávání znaků a kde je paměť uložena (takže nepotřebovala být souvislá vyrovnávací paměť snímků). Podprogramy strojního kódu 6502 by mohly být spuštěny na řádcích skenování nastavením bitu v instrukci seznamu zobrazení. ANTIC také podporoval plynulé svislé a vodorovné posouvání nezávislé na CPU.

80. léta 20. století

NEC μPD7220 A

NEC μPD7220 byl první implementace procesoru PC grafické zobrazení jako jediný Large Scale Integration (LSI) integrovaného obvodu čipu, což umožňuje konstrukci low-cost, vysoce výkonné videa grafické karty, jako jsou ty od číslo devět Visual Technology . To se stalo nejznámějším GPU až do poloviny 80. let minulého století. Jednalo se o první plně integrovaný grafický zobrazovací procesor s kovovým oxidem a polovodičem ( NMOS ) pro počítače s podporou VLSI (velmi rozsáhlá integrace) , podporoval rozlišení1024x1024 a položil základy rozvíjejícího se trhu s grafikou pro počítače. Byl použit v řadě grafických karet a byl licencován pro klony, jako je Intel 82720, první z procesorových jednotek Intel pro zpracování grafiky . Arkádové hry Williams Electronics Robotron 2084 , Joust , Sinistar a Bubbles , všechny vydané v roce 1982, obsahují vlastní blitterové čipy pro provoz na 16barevných bitmapách .

V roce 1984 společnost Hitachi uvedla na trh ARTC HD63484, první hlavní grafický procesor CMOS pro PC. ARTC byl schopen zobrazovat až 4K rozlišení v monochromatickém režimu a na konci 80. let byl použit v řadě grafických karet a terminálů pro PC. V roce 1985 Commodore Amiga představoval vlastní grafický čip s blitterovou jednotkou zrychlující manipulaci s bitmapou, kreslení čar a vyplňování oblastí. Součástí je také koprocesor s vlastní jednoduchou instrukční sadou, schopný manipulovat s registry hardwarového hardwaru synchronizovaně s video paprskem (např. Pro přepínače palet pro jednotlivé skenovací řádky, multiplexování sprite a hardwarová okna) nebo řídit blitter. V roce 1986 společnost Texas Instruments uvedla na trh TMS34010 , první plně programovatelný grafický procesor. Mohl běžet kód pro obecné účely, ale měl sadu graficky orientovaných instrukcí. V letech 1990–1992 se tento čip stal základem akceleračních karet Windows Texas Instruments Graphics Architecture („TIGA“) .

IBM 8514 Adaptér Micro Channel, s pamětí add-on.

V roce 1987 byl grafický systém IBM 8514 vydán jako jedna z prvních grafických karet kompatibilních s počítačem IBM PC pro implementaci 2D primitiv s pevnou funkcí v elektronickém hardwaru . Sharp je Sharp X68000 , které vyšlo v roce 1987, používal zakázkový grafický chipset s paletou a hardwarovou podporou 65536 barev pro skřítky, rolování a více playfields, případně slouží jako vývoj stroje pro Capcom 's CP System arkádové palubě. Společnost Fujitsu později soutěžila s počítačem FM Towns , vydaným v roce 1989 s podporou plné 16 777 216 barevných palet. V roce 1988 byly v arkádách představeny první specializované polygonální 3D grafické desky s Namco System 21 a Taito Air System.

Sekce VGA na základní desce v systému IBM PS/55

IBM ‚s proprietární Video Graphics Array (VGA) standardní displej byl představen v roce 1987, s maximálním rozlišením 640 x 480 pixelů. V listopadu 1988 společnost NEC Home Electronics oznámila vytvoření asociace Video Electronics Standards Association (VESA) za účelem vývoje a propagace standardu počítačového displeje Super VGA (SVGA) jako nástupce proprietárního standardu displeje VGA společnosti IBM. Rozlišení grafického displeje s podporou VGA až 800 × 600 pixelů , což je nárůst o 36%.

90. léta 20. století

Karta Voodoo3 2000 AGP

V roce 1991 představila společnost S3 Graphics model S3 86C911 , který její návrháři pojmenovali po Porsche 911 jako označení zvýšení výkonu, které slibovalo. 86C911 vytvořil řadu imitátorů: do roku 1995 přidali všichni hlavní výrobci grafických čipů pro počítače do svých čipů podporu 2D zrychlení. Do této doby akcelerátory Windows s pevnou funkcí překonaly drahé grafické koprocesory pro obecné účely ve výkonu Windows a tyto koprocesory zmizely z trhu s PC.

V průběhu devadesátých let se zrychlování 2D GUI stále vyvíjelo. Se zlepšováním výrobních schopností se zlepšovala i úroveň integrace grafických čipů. Další aplikační programovací rozhraní (API) dorazila pro řadu úkolů, jako je například grafická knihovna Microsoft WinG pro Windows 3.xa jejich pozdější rozhraní DirectDraw pro hardwarovou akceleraci 2D her v systému Windows 95 a novějších.

Na počátku a v polovině devadesátých let se 3D grafika v reálném čase stále častěji objevovala v arkádových, počítačových a konzolových hrách, což vedlo k rostoucí veřejné poptávce po hardwarově akcelerované 3D grafice . Počáteční příklady hardwaru pro 3D grafiku pro masový trh lze nalézt na arkádových systémových deskách, jako jsou Sega Model 1 , Namco System 22 a Sega Model 2 , a konzole videoher páté generace , jako je Saturn , PlayStation a Nintendo 64 . Arkádové systémy jako Sega Model 2 a Namco Magic Edge Hornet Simulator v roce 1993 byly schopné hardwarové T&L ( transformace, ořezávání a osvětlení ) let předtím, než se objevily na spotřebitelských grafických kartách. Některé systémy používaly DSP k urychlení transformací. Společnost Fujitsu , která pracovala na arkádovém systému Sega Model 2, začala pracovat na integraci T&L do jediného řešení LSI pro použití v domácích počítačích v roce 1995; Fujitsu Pinolite první geometrie procesor pro osobní počítače 3D, které vyšlo v roce 1997. První hardware T & L GPU na domácí herní konzole bylo Nintendo 64 ‚S Reality Koprocesor , které vyšlo v roce 1996. V roce 1997, Mitsubishi vydala 3Dpro / 2MP , plně funkční GPU schopný transformace a osvětlení pro pracovní stanice a desktopy Windows NT ; ATi to využilo pro svoji grafickou kartu FireGL 4000 , vydanou v roce 1997.

Pojem „GPU“ vytvořil Sony v souvislosti s 32bitovým GPU Sony (navrženým společností Toshiba ) v herní konzoli PlayStation vydané v roce 1994.

Ve světě počítačů byly pozoruhodnými neúspěšnými prvními pokusy o levné 3D grafické čipy S3 ViRGE , ATI Rage a Matrox Mystique . Tyto čipy byly v podstatě 2D urychlovače předchozí generace s 3D funkcemi. Mnoho z nich bylo dokonce kompatibilních s čipy předchozí generace pro snadnou implementaci a minimální náklady. Zpočátku byla výkonná 3D grafika možná pouze s diskrétními deskami určenými k akceleraci 3D funkcí (a zcela bez 2D GUI akcelerace), jako jsou PowerVR a 3dfx Voodoo . Jak ale výrobní technologie pokračovala, video, 2D GUI akcelerace a 3D funkce byly integrovány do jednoho čipu. Čipové sady Verite společnosti Rendition byly mezi prvními, kteří to udělali natolik dobře, že si to zaslouží pozornost. V roce 1997 šel Rendition o krok dále spoluprací s Herculesem a Fujitsu na projektu „Thriller Conspiracy“, který kombinoval geometrický procesor Fujitsu FXG-1 Pinolite s jádrem Vérité V2200 a vytvořil grafickou kartu s plným motorem T&L roky před GeForce od Nvidie 256 . Tato karta, navržená ke snížení zátěže CPU systému, se nikdy nedostala na trh.

OpenGL se objevil na začátku 90. let jako profesionální grafické API, ale původně trpěl problémy s výkonem, které umožnily Glide API zasáhnout a stát se dominantní silou na PC na konci 90. let. Tyto problémy však byly rychle překonány a rozhraní Glide API se dostalo na vedlejší kolej. Softwarové implementace OpenGL byly v této době běžné, i když vliv OpenGL nakonec vedl k rozsáhlé hardwarové podpoře. Časem se objevila parita mezi funkcemi nabízenými v hardwaru a funkcemi nabízenými v OpenGL. DirectX se stal populární mezi vývojáři her pro Windows na konci 90. let. Na rozdíl od OpenGL Microsoft trval na poskytování přísné individuální podpory hardwaru. Díky tomuto přístupu byl DirectX zpočátku méně populární jako samostatné grafické API, protože mnoho GPU poskytovalo své vlastní specifické funkce, z nichž již existující aplikace OpenGL mohly těžit, takže DirectX často zůstávalo o jednu generaci pozadu. (Viz: Porovnání OpenGL a Direct3D .)

Postupem času začal Microsoft těsněji spolupracovat s vývojáři hardwaru a začal cílit na verze DirectX, aby se shodovaly s verzemi podpůrného grafického hardwaru. Direct3D 5.0 byla první verzí narůstajícího API, která si získala široké uplatnění na herním trhu, a přímo konkurovala mnoha hardwarově specifickým, často proprietárním grafickým knihovnám, zatímco OpenGL si udržel silnou sledovanost. Direct3D 7.0 představil podporu pro hardwarově akcelerovanou transformaci a osvětlení (T&L) pro Direct3D, zatímco OpenGL měl tuto schopnost již odhalenou od svého vzniku. Karty 3D akcelerátoru přesahovaly rámec jednoduchých rasterizérů a přidaly do potrubí 3D vykreslování další významnou hardwarovou fázi. Nvidia GeForce 256 (také známý jako NV10) byla první spotřebitel-level karta vydána na trhu s hardwarově akcelerované T & L, zatímco profesionální 3D karty už tuto schopnost. Hardwarová transformace a osvětlení, což jsou již existující funkce OpenGL, se v 90. letech dostaly na hardware spotřebitelské úrovně a vytvořily precedens pro pozdější jednotky pixel shader a vertex shader, které byly mnohem flexibilnější a programovatelnější.

2000 až 2010

Nvidia jako první vyrobila čip schopný programovatelného stínování ; GeForce 3 (s kódovým označením NV20). Každý pixel nyní mohl být zpracován krátkým „programem“, který by mohl obsahovat další textury obrázků jako vstupy, a každý geometrický vrchol mohl být podobně zpracován krátkým programem, než byl promítán na obrazovku. Používá se v konzole Xbox a konkuruje PlayStation 2 , který používá vlastní vektorovou jednotku pro hardwarově akcelerované zpracování vrcholů (běžně označované jako VU0/VU1). Nejstarší inkarnace motorů spouštění shaderů používaných v Xboxu neměly obecný účel a nemohly spustit libovolný pixelový kód. Vrcholy a pixely byly zpracovány různými jednotkami, které měly své vlastní zdroje s pixelovými shadery, které mají mnohem přísnější omezení (protože jsou prováděny na mnohem vyšších frekvencích než u vrcholů). Motory stínování pixelů byly ve skutečnosti více podobné vysoce přizpůsobitelnému funkčnímu bloku a ve skutečnosti „nespouštěly“ program. Mnoho z těchto rozdílů mezi vrcholem a stínováním pixelů bylo vyřešeno až mnohem později s modelem Unified Shader .

V říjnu 2002, se zavedením ATI Radeon 9700 (také známý jako R300), první akcelerátor Direct3D 9.0 na světě , pixelové a vrcholové shadery mohly implementovat smyčkování a zdlouhavou matematiku s plovoucí desetinnou čárkou a rychle se staly flexibilními jako CPU, přesto objednávky o velikosti rychlejší pro operace obrazového pole. Pixelové stínování se často používá pro nárazové mapování , které přidává texturu, aby objekt vypadal lesklý, matný, drsný nebo dokonce kulatý nebo extrudovaný.

Se zavedením řady Nvidia GeForce 8 a poté z nové generické jednotky pro zpracování proudu se GPU staly více zobecněnými výpočetními zařízeními. Dnes paralelní GPU začaly dělat výpočetní zásahy proti CPU a podoblast výzkumu, nazvaná GPU Computing nebo GPGPU pro General Purpose Computing na GPU , si našla cestu do tak rozmanitých oblastí, jako je strojové učení , průzkum ropy , vědecké zpracování obrazu , lineární algebra , statistiky , 3D rekonstrukce a dokonce stanovení cen akcií . GPGPU v té době byl předchůdcem toho, co se nyní nazývá výpočetní shader (např. CUDA, OpenCL, DirectCompute) a ve skutečnosti do určité míry zneužíval hardware tím, že data předaná algoritmům považoval za mapy textur a prováděl algoritmy kreslením trojúhelníku nebo čtyřúhelníku pomocí vhodného pixelového shaderu. To zjevně přináší určité režijní náklady, protože jednotky, jako je Scan Converter, jsou zapojeny tam, kde nejsou ve skutečnosti potřeba (ani manipulace s trojúhelníkem není problém - kromě vyvolání shaderu pixelů).

Platforma CUDA společnosti Nvidia , poprvé představená v roce 2007, byla nejdříve široce přijatým programovacím modelem pro práci s GPU. V poslední době je OpenCL široce podporován. OpenCL je otevřený standard definovaný skupinou Khronos, který umožňuje vývoj kódu pro GPU i CPU s důrazem na přenositelnost. Řešení OpenCL podporují společnosti Intel, AMD, Nvidia a ARM a podle nedávné zprávy společnosti Evan's Data je OpenCL vývojovou platformou GPGPU, kterou vývojáři nejčastěji používají v USA a Asii a Tichomoří.

2010 do současnosti

V roce 2010 zahájila společnost Nvidia partnerství se společností Audi za účelem napájení palubních desek svých vozů, přičemž pomocí GPU Tegra poskytovala zvýšenou funkčnost navigačním a zábavním systémům automobilů. Pokroky v technologii GPU v automobilech pomohly prosadit technologii vlastního řízení . Karty AMD Radeon HD 6000 Series byly vydány v roce 2010 a v roce 2011 společnost AMD vydala své samostatné GPU řady 6000M pro použití v mobilních zařízeních. Řada grafických karet Kepler od společnosti Nvidia vyšla v roce 2012 a byla použita v kartách řady Nvidia 600 a 700. Funkce v této nové mikroarchitektuře GPU zahrnovala GPU boost, technologii, která upravuje takt grafické karty tak, aby se zvýšil nebo snížil podle jejího příkonu. Kepler mikroarchitektury byl vyroben na nm procesu 28.

PS4 a Xbox Jeden byl propuštěn v roce 2013, oba používají GPU založené na AMD Radeon HD 7850 a 7790 . Po řadě GPU společnosti Nvidia Kepler následovala řada Maxwell vyráběná stejným postupem. 28 nm čipy Nvidia byly vyrobeny TSMC, Taiwan Semiconductor Manufacturing Company, která v té době vyráběla 28 nm procesem. Ve srovnání se 40 nm technologií z minulosti umožnil tento nový výrobní proces 20 % zvýšení výkonu při současném nižší spotřebě energie. Náhlavní soupravy pro virtuální realitu mají velmi vysoké systémové požadavky. Výrobci náhlavních souprav VR doporučovali v době jejich vydání GTX 970 a R9 290X nebo lepší. Pascal je další generací spotřebitelských grafických karet od společnosti Nvidia vydaných v roce 2016. Řada karet GeForce 10 spadá pod tuto generaci grafických karet. Jsou vyráběny pomocí 16 nm výrobního postupu, který vylepšuje předchozí mikroarchitektury. Nvidia vydala jednu kartu, která není spotřebitelem, v rámci nové architektury Volta , Titan V. Změny z Titan XP, Pascal's high-end card, zahrnují zvýšení počtu jader CUDA, přidání tenzorových jader a HBM2 . Tensorová jádra jsou jádra speciálně navržená pro hluboké učení, zatímco paměť s velkou šířkou pásma je na sobě, skládaná, nižší taktovaná paměť, která nabízí extrémně širokou paměťovou sběrnici, která je užitečná pro zamýšlený účel Titan V. Aby Nvidia zdůraznila, že Titan V není herní karta, odstranila příponu „GeForce GTX“, kterou přidává ke spotřebitelským herním kartám.

20. srpna 2018 Nvidia uvedla na trh GPU řady RTX 20, které do GPU přidávají jádra pro sledování paprsků a zlepšují jejich výkon při světelných efektech. GPU Polaris 11 a Polaris 10 od AMD jsou vyráběny 14 nanometrovým procesem. Jejich vydání má za následek podstatné zvýšení výkonu na watt grafických karet AMD. AMD také vydala řadu Vega GPU pro špičkový trh jako konkurent špičkových karet Pascal společnosti Nvidia, které také obsahují HBM2 jako Titan V.

V roce 2019 AMD vydala nástupce své mikroarchitektury/instrukční sady Graphics Core Next (GCN). První produktovou řadou první generace RDNA nazvanou RDNA byla řada grafických karet Radeon RX 5000 , která byla později uvedena na trh 7. července 2019. Později společnost oznámila, že nástupce mikroarchitektury RDNA bude obnovením. Nová mikroarchitektura, nazvaná jako RDNA 2, byla údajně vydána ve 4. čtvrtletí 2020.

Společnost AMD představila na online akci 28. října 2020 řadu Radeon RX 6000 , svou novou generaci grafických karet RDNA 2 s podporou hardwarově akcelerovaného sledování paprsků. Řadu původně tvoří RX 6800, RX 6800 XT a RX 6900 XT . RX 6800 a 6800 XT byly uvedeny na trh 18. listopadu 2020, přičemž RX 6900 XT byl vydán 8. prosince 2020. RX 6700 XT, který vychází z Navi 22, byl uveden na trh 18. března 2021.

PlayStation 5 a Xbox řady X a řady S byl propuštěn v roce 2020, oba používají GPU založených na rDNA 2. mikroarchitektury s proprietárními vylepšení a různé konfigurace GPU při realizaci každého systému.

GPU společnosti

Mnoho společností vyrábělo GPU pod řadou značek. V roce 2009 zaujímaly vedoucí postavení na trhu společnosti Intel , Nvidia a AMD / ATI s podílem na trhu 49,4%, 27,8% a 20,6%. Tato čísla však zahrnují integrovaná grafická řešení společnosti Intel jako GPU. Když to nepočítáme, Nvidia a AMD ovládají od roku 2018 téměř 100% trhu. Jejich příslušné tržní podíly jsou 66% a 33%. Kromě toho, Matrox vyrábět GPU. Moderní smartphony také používají většinou Adreno GPU od Qualcomm , GPU PowerVR od Imagination Technologies a Mali GPU od ARM .

Výpočtové funkce

Moderní GPU používají většinu svých tranzistorů k výpočtům souvisejícím s 3D počítačovou grafikou . Kromě 3D hardwaru dnešní GPU obsahují základní možnosti 2D akcelerace a framebufferu (obvykle s režimem kompatibility VGA). Novější karty jako AMD/ATI HD5000-HD7000 dokonce postrádají 2D zrychlení; musí být emulován 3D hardwarem. GPU byly původně použity k urychlení paměti náročné práci textury mapování a vykreslování polygonů, později přidáním jednotky k urychlení geometrické výpočty, jako je rotace a translace z vrcholů do různých souřadnicových systémů . Nedávný vývoj v GPU zahrnuje podporu programovatelných shaderů, které mohou manipulovat s vrcholy a texturami pomocí mnoha stejných operací podporovaných CPU , převzorkování a interpolační techniky pro omezení aliasingu a velmi přesné barevné prostory . Vzhledem k tomu, že většina těchto výpočtů zahrnuje maticové a vektorové operace, inženýři a vědci stále více studovali používání GPU pro negrafické výpočty; obzvláště se hodí k dalším trapně paralelním problémům.

Do výkonu karty pro vykreslování v reálném čase vstupuje několik faktorů konstrukce GPU. Mezi běžné faktory může patřit velikost drah konektorů při výrobě polovodičových zařízení , frekvence hodinového signálu a počet a velikost různých vyrovnávacích pamětí na čipu . Kromě toho počet streamovacích multiprocesorů (SM) pro GPU NVidia nebo Compute Units (CU) pro AMD GPU, které popisují počet jaderných jednotek na křemíkovém procesoru v čipu GPU, které provádějí základní výpočty, obvykle pracující souběžně s další SM/CU na GPU. Výkon GPU se obvykle měří v operacích s pohyblivou řádovou čárkou za sekundu nebo FLOPS , přičemž GPU v letech 2010 a 2020 obvykle poskytují výkon měřený v teraflopech (TFLOPS). Toto je odhadované měřítko výkonu, protože na skutečnou míru zobrazení mohou mít vliv další faktory.

Se vznikem hloubkového učení se zvýšil význam GPU. Ve výzkumu provedeném společností Indigo bylo zjištěno, že při trénování neuronových sítí pro hluboké učení mohou být GPU 250krát rychlejší než CPU. V této oblasti existuje určitá úroveň konkurence s ASIC , zejména Tensor Processing Unit (TPU) od společnosti Google. ASIC však vyžadují změny stávajícího kódu a GPU jsou stále velmi populární.

GPU akcelerované dekódování a kódování videa

ATI HD5470 GPU (výše) je vybaven UVD 2.1, což mu umožňuje dekódovat video formáty AVC a VC-1

Většina GPU vyrobených od roku 1995 podporuje barevný prostor YUV a hardwarové překryvy , důležité pro přehrávání digitálního videa , a mnoho GPU vyrobených od roku 2000 také podporuje primitiva MPEG, jako je kompenzace pohybu a iDCT . Tento proces hardwarově akcelerovaného dekódování videa, kde jsou části procesu dekódování videa a postprocesingu videa přeneseny na hardware GPU, se běžně nazývá „akcelerované dekódování videa GPU“, „dekódování videa podporované GPU“, „hardwarově akcelerované GPU“ dekódování videa “nebo„ hardwarové dekódování videa s podporou GPU “.

Novější grafické karty dokonce dekódují video ve vysokém rozlišení na kartě, což snižuje zátěž centrální procesorové jednotky. Nejběžnější API pro GPU akcelerované dekódování videa jsou DxVA pro operační systém Microsoft Windows a VDPAU , VAAPI , XvMC a XvBA pro operační systémy založené na Linuxu a UNIX. Všechny kromě XvMC jsou schopné dekódovat videa kódovaná MPEG-1 , MPEG-2 , MPEG-4 ASP (MPEG-4 část 2) , MPEG-4 AVC (H.264 / DivX 6), VC-1 , WMV3 / WMV9 , Kodeky Xvid / OpenDivX (DivX 4) a DivX 5 , zatímco XvMC je schopen dekódovat pouze MPEG-1 a MPEG-2.

Existuje několik vyhrazených hardwarových řešení pro dekódování a kódování videa .

Procesy dekódování videa, které lze urychlit

Procesy dekódování videa, které lze urychlit dnešním moderním hardwarem GPU, jsou:

Výše uvedené operace mají také aplikace pro úpravu videa, kódování a překódování

Formuláře GPU

Terminologie

V osobních počítačích existují dvě hlavní formy GPU. Každý z nich má mnoho synonym:

Použijte konkrétní GPU

Většina GPU je navržena pro konkrétní použití, 3D grafiku v reálném čase nebo jiné hromadné výpočty:

  1. Hraní
  2. Cloudové hry
  3. Pracovní stanice
  4. Cloudová pracovní stanice
  5. Školení o umělé inteligenci a cloud
  6. Automobil bez řidiče

Vyhrazené grafické karty

GPU nejvýkonnější třídy obvykle komunikují se základní deskou pomocí rozšiřujícího slotu, jako je PCI Express (PCIe) nebo Accelerated Graphics Port (AGP), a lze je obvykle relativně snadno vyměnit nebo upgradovat za předpokladu, že je základní deska schopná podporovat upgrade. Několik grafických karet stále používá sloty PCI ( Peripheral Component Interconnect ), ale jejich šířka pásma je tak omezená, že se obecně používají pouze tehdy, když není k dispozici slot PCIe nebo AGP.

Vyhrazený grafický procesor nemusí být nutně vyjímatelný ani nemusí být standardně propojen se základní deskou. Pojem „vyhrazený“ se vztahuje ke skutečnosti, že vyhrazené grafické karty mají RAM, která je věnována používání karty, nikoli ke skutečnosti, že většina vyhrazených grafických karet je vyměnitelná. Dále je tato RAM obvykle speciálně vybrána pro očekávané sériové vytížení grafické karty (viz GDDR ). Někdy se systémům s vyhrazenými, diskrétními GPU říkalo „DIS“ systémy, na rozdíl od systémů „UMA“ (viz další část). Dedikované GPU pro přenosné počítače jsou nejčastěji propojeny nestandardním a často proprietárním slotem kvůli omezením velikosti a hmotnosti. Takové porty mohou být stále považovány za PCIe nebo AGP, pokud jde o jejich logické hostitelské rozhraní, i když nejsou fyzicky zaměnitelné se svými protějšky.

Technologie jako SLI a NVLink od Nvidia a CrossFire od AMD umožňují více GPU kreslit obrázky současně na jednu obrazovku, čímž se zvyšuje výpočetní výkon dostupný pro grafiku. Tyto technologie jsou však stále méně obvyklé, protože většina her plně nevyužívá více GPU, protože si je většina uživatelů nemůže dovolit. Několik GPU se stále používá na superpočítačích (jako na Summitu ), na pracovních stanicích pro zrychlení videa (zpracování více videí najednou) a 3D vykreslování, pro VFX a pro simulace a v AI pro urychlení školení, jako je tomu u řady Nvidia Pracovní stanice a servery DGX a GPU Tesla a nadcházející GPU Ponte Vecchio společnosti Intel.

Integrovaná jednotka pro zpracování grafiky

Pozice integrovaného GPU v uspořádání systému northbridge/southbridge
Základní deska ASRock s integrovanou grafikou, která má výstupy HDMI, VGA a DVI.

Integrovaná jednotka pro zpracování grafiky (IGPU), Integrovaná grafika , řešení pro sdílenou grafiku , integrované grafické procesory (IGP) nebo architektura sjednocené paměti (UMA) využívají část systémové paměti RAM počítače, nikoli vyhrazené grafické paměti. IGP lze integrovat na základní desku jako součást čipové sady (northbridge) nebo na stejnou matici (integrovaný obvod) s CPU (jako AMD APU nebo Intel HD Graphics ). Na některých základních deskách mohou IGP AMD používat vyhrazenou paměť postranního portu. Jedná se o samostatný pevný blok vysoce výkonné paměti, který je určen pro použití GPU. Na začátku roku 2007 tvoří počítače s integrovanou grafikou přibližně 90% všech dodávek počítačů. Jsou méně nákladné na implementaci než vyhrazené grafické zpracování, ale bývají méně schopné. Historicky bylo integrované zpracování považováno za nevhodné pro hraní 3D her nebo spouštění graficky náročných programů, ale mohlo spouštět méně intenzivní programy, jako je Adobe Flash. Příkladem takových IGP by mohly být nabídky od SiS a VIA kolem roku 2004. Moderní integrované grafické procesory, jako je AMD Accelerated Processing Unit a Intel HD Graphics, jsou však více než schopné zpracovávat 2D grafiku nebo 3D grafiku s nízkým namáháním.

Vzhledem k tomu, že výpočty GPU jsou extrémně náročné na paměť, může integrované zpracování konkurovat CPU o relativně pomalou systémovou RAM, protože má minimální nebo žádnou vyhrazenou video paměť. IGP mohou mít šířku pásma paměti až 29 856 GB/s ze systémové RAM, zatímco grafická karta může mít mezi jádrem RAM a GPU šířku pásma až 264 GB/s . Tato šířka pásma paměťové sběrnice může omezit výkon GPU, ačkoli vícekanálová paměť může tento nedostatek zmírnit. Starší integrované grafické čipové sady postrádaly hardwarovou transformaci a osvětlení , ale novější ji obsahují.

Hybridní grafické zpracování

Tato novější třída GPU konkuruje integrované grafice na trhu stolních počítačů a notebooků nižší třídy. Nejběžnější implementací jsou ATI HyperMemory a Nvidia TurboCache .

Hybridní grafické karty jsou o něco dražší než integrované, ale mnohem levnější než dedikované grafické karty. Ty sdílejí paměť se systémem a mají malou vyhrazenou mezipaměť paměti, aby se vykompenzovala vysoká latence systémové paměti RAM. Technologie v rámci PCI Express to umožňují. I když jsou tato řešení někdy inzerována s až 768 MB RAM, jde o to, kolik lze sdílet se systémovou pamětí.

Zpracování streamu a GPU pro obecné účely (GPGPU)

Je stále běžnější používat univerzální grafickou procesorovou jednotku (GPGPU) jako upravenou formu proudového procesoru (nebo vektorového procesoru ) s běžícími výpočetními jádry . Tento koncept mění obrovskou výpočetní sílu shaderového potrubí moderního grafického akcelerátoru na výpočetní výkon pro všeobecné účely, na rozdíl od toho, že je připojen výhradně k provádění grafických operací. V určitých aplikacích vyžadujících masivní vektorové operace to může přinést o několik řádů vyšší výkon než konvenční CPU. Dva největší diskrétní (viz „ Dedikované grafické karty “ výše) návrháři GPU, AMD a Nvidia , začínají tento přístup prosazovat řadou aplikací. Společnosti Nvidia i AMD se spojily se Stanford University a vytvořily klienta založeného na GPU pro projekt distribuované výpočetní techniky Folding@home pro výpočty skládání proteinů. Za určitých okolností GPU počítá čtyřicetkrát rychleji než CPU tradičně používané takovými aplikacemi.

GPGPU lze použít pro mnoho typů trapně paralelních úloh včetně sledování paprsku . Obecně jsou vhodné pro vysokorychlostní výpočty typu, které vykazují datový paralelismus, aby využily architekturu SIMD s širokou vektorovou šířkou GPU.

Vysokovýkonné počítače založené na GPU navíc začínají hrát významnou roli ve velkém modelování. Tři z 10 nejvýkonnějších superpočítačů na světě využívají akcelerace GPU.

GPU podporují rozšíření API do programovacího jazyka C, jako je OpenCL a OpenMP . Kromě toho každý prodejce GPU představil své vlastní API, které funguje pouze s jejich kartami, AMD APP SDK a CUDA od AMD a Nvidia. Tyto technologie umožňují spouštění specifikovaných funkcí nazývaných výpočetní jádra z normálního programu C na stream procesorech GPU. To umožňuje programům C využívat výhod schopnosti GPU pracovat souběžně na velkých vyrovnávacích pamětech, a když je to vhodné, stále používat CPU. CUDA je také první API, které umožňuje aplikacím založeným na CPU přímý přístup ke zdrojům GPU pro obecnější výpočty bez omezení používání grafického API.

Od roku 2005 existuje zájem o využití výkonu nabízeného GPU pro evoluční výpočty obecně a zejména pro urychlení hodnocení kondice v genetickém programování . Většina přístupů kompiluje lineární nebo stromové programy na hostitelském počítači a přenáší spustitelný soubor do GPU, který má být spuštěn. Výkonnostní výhody se obvykle získají pouze současným spuštěním jednoho aktivního programu na mnoha příkladových problémech pomocí architektury SIMD GPU . Podstatného zrychlení však lze dosáhnout také tím, že se programy nezkomplikují a místo toho se přenesou do GPU, aby se tam interpretovaly. Zrychlení pak lze dosáhnout buď interpretací více programů současně, spuštěním více příkladových problémů, nebo kombinací obou. Moderní GPU může okamžitě simultánně interpretovat stovky tisíc velmi malých programů.

Některé moderní GPU pracovních stanic, jako jsou karty pracovních stanic Nvidia Quadro využívající architektury Volta a Turing, obsahují dedikující procesorová jádra pro aplikace hlubokého učení založené na tenzoru. V současné sérii GPU společnosti Nvidia se tato jádra nazývají Tensor Cores. Tyto GPU mají obvykle výrazné zvýšení výkonu FLOPS, využívající násobení a dělení matice 4x4, což v některých aplikacích vede k výkonu hardwaru až 128 TFLOPS. Tato tenzorová jádra se mají objevit také ve spotřebitelských kartách s architekturou Turing a případně v řadě spotřebitelských karet Navi od AMD.

Externí GPU (eGPU)

Externí GPU je grafický procesor umístěný mimo kryt počítače, podobný velkému externímu pevnému disku. U přenosných počítačů se někdy používají externí grafické procesory. Notebooky mohou mít značné množství paměti RAM a dostatečně výkonnou centrální procesorovou jednotku (CPU), ale často jim chybí výkonný grafický procesor a místo toho mají méně výkonný, ale energeticky účinnější integrovaný grafický čip. Integrované grafické čipy často nejsou dostatečně výkonné pro hraní videoher nebo pro jiné graficky náročné úkoly, jako je úprava videa nebo 3D animace/vykreslování.

Proto je žádoucí umět připojit GPU k nějaké externí sběrnici notebooku. PCI Express je jediná sběrnice používaná k tomuto účelu. Portem může být například port ExpressCard nebo mPCIe (PCIe × 1, až 5 nebo 2,5 Gbit/s) nebo port Thunderbolt 1, 2 nebo 3 (PCIe × 4, až 10, 20 nebo 40 Gbit/s). Tyto porty jsou k dispozici pouze u některých notebooků. Skříně eGPU obsahují vlastní napájecí zdroj (PSU), protože výkonné GPU mohou snadno spotřebovat stovky wattů.

Oficiální podpora prodejců pro externí GPU získala v poslední době velký ohlas. Jedním z významných milníků bylo rozhodnutí společnosti Apple oficiálně podporovat externí GPU s MacOS High Sierra 10.13.4. Existuje také několik hlavních prodejců hardwaru (HP, Alienware, Razer), kteří vydávají skříně Thunderbolt 3 eGPU. Tato podpora nadále podporuje implementace eGPU nadšenci.

Odbyt

V roce 2013 bylo celosvětově dodáno 438,3 milionu GPU a prognóza na rok 2014 byla 414,2 milionu.

Viz také

Hardware

API

Aplikace

Reference

externí odkazy