GPU — co to je, struktura a princip činnosti

Autor: IT Sectr Publikováno: 2026-06-10 Doba čtení: 9 min

GPU (Graphics Processing Unit) — je specializovaný procesor pro paralelní zpracování grafických dat, provádějící miliony výpočtů nad pixely a vrcholy za snímek. Na rozdíl od CPU, který je optimalizován pro sekvenční úlohy s nízkou latencí, GPU obsahuje tisíce nízkoenergetických jader pro hromadné matematické operace. Podle NVIDIA Developer Blog (2025) obsahují moderní mobilní GPU až 1024 jader a dosahují výkonu 2 TFLOPS při výpočetním zatížení. Vývojáři integrují GPU pro rendering, post-processing a strojové učení na zařízení.

Hlavní body

  • GPU — specializovaný procesor s tisíci jader pro paralelní zpracování grafiky a výpočtů.
  • Architektura GPU je založena na SIMD pipeline: jedna instrukce se provádí nad mnoha daty současně.
  • GPU v mobilních zařízeních je integrován do SoC a sdílí paměť s CPU prostřednictvím architektury Unified Memory.
  • GPU Computing (GPGPU) využívá grafický procesor pro negrafické úlohy: ML, kryptografie, zpracování signálů.
  • API pro přístup k GPU na mobilních platformách: Vulkan, Metal, OpenGL ES a WebGL pro prohlížeče.

Co je GPU?

GPU (Graphics Processing Unit) — je specializovaný mikročip navržený pro hromadný paralelismus. První GPU se objevily na konci 90. let jako akcelerátory 3D grafiky pro stolní počítače. Od té doby se architektura vyvinula z pevné pipeline na programovatelné shadery a univerzální výpočetní bloky.

Hlavním účelem GPU — rasterizace: převod geometrických dat (vrcholy, trojúhelníky) na pixely na obrazovce. Proces zahrnuje transformaci vrcholů, ořezávání neviditelných ploch, texturování a míchání barev. Všechny tyto operace se provádějí paralelně pro tisíce prvků současně.

Podle Jon Peddie Research (2025) tvoří trh mobilních GPU 58 % celkového objemu grafických procesorů, čímž předčí diskrétní řešení pro PC a servery. Každý chytrý telefon obsahuje alespoň jeden GPU integrovaný v System-on-Chip (SoC) spolu s CPU, DSP a neuroprocesorem.

Moderní GPU se dělí na dva typy: integrované (vestavěné do SoC, sdílející paměť s CPU) a diskrétní (samostatná karta s vlastní video pamětí). V mobilním vývoji se používají výhradně integrované GPU — Qualcomm Adreno, ARM Mali, Apple GPU a Imagination PowerVR.

Historie vývoje GPU

Evoluce GPU prošla třemi fázemi: pevná pipeline (1999–2006), unifikované shadery (2006–2016) a programovatelná výpočetní jádra (2016 — současnost). První fáze definovala pevnou posloupnost operací — transformace, osvětlení, texturování. Vývojář nemohl do pipeline zasahovat.

S příchodem unifikovaných shaderů získal GPU schopnost provádět libovolné programy — shadery napsané v HLSL nebo GLSL. To otevřelo cestu k GPGPU — využití GPU pro negrafické úlohy. Třetí fáze přidala tensorová jádra pro strojové učení a ray tracing v reálném čase.

U mobilních GPU byl klíčovým milníkem zavedení Tile-Based Deferred Rendering (TBDR) — architektury, při které je snímek rozdělen na dlaždice (16x16 pixelů) a zpracováván v rychlé lokální paměti. To snižuje spotřebu energie 3–5krát ve srovnání s immediate mode renderingem typickým pro stolní GPU.

Architektura GPU

Architektura GPU se radikálně liší od CPU. Místo několika výkonných jader s velkou cache obsahuje GPU stovky nebo tisíce jednoduchých výpočetních bloků optimalizovaných pro SIMD (Single Instruction, Multiple Data) — jedna instrukce se provádí nad mnoha datovými prvky.

Základním blokem GPU — Shader Core (v terminologii NVIDIA) nebo Execution Unit (Intel). Několik takových bloků se spojuje do Compute Unit (AMD) nebo Streaming Multiprocessor (NVIDIA). Každý blok obsahuje ALU pro aritmetiku, registry a plánovač warpů (skupin vláken).

Mobilní GPU se architektonicky liší od stolních. Qualcomm Adreno používá architekturu s programovatelnými shader procesory a vyhrazeným blokem rasterizace. ARM Mali je založen na Bifrost nebo Valhall — architekturách s kvartetovým zpracováním warpů. Apple GPU má od roku 2017 vlastní design s podporou Metal a unifikované paměti.

VýrobceŘada GPUArchitekturaAPI
QualcommAdreno 6xx/7xx/8xxProgramovatelné shader procesoryVulkan, OpenGL ES
ARMŘada Mali-GBifrost / ValhallVulkan, OpenGL ES
AppleApple GPU (A13–A18)Vlastní designMetal
ImaginationPowerVR IMGFurian / B-SeriesVulkan, OpenGL ES

Klíčovou vlastností mobilních GPU — Unified Memory Architecture (UMA). GPU a CPU sdílejí společnou RAM bez oddělené video paměti. To snižuje latenci při výměně dat a zjednodušuje programování, ale omezuje propustnost při intenzivních výpočtech.

GPU vs CPU: klíčové rozdíly

CPU je navržen pro sekvenční úlohy s minimální latencí. Obsahuje 4–12 výkonných jader s velkou cache L1/L2/L3, prediktorem větvení a spekulativním prováděním. GPU naproti tomu obětuje latenci ve prospěch propustnosti — tisíce jader zpracovávají data s vysokou latencí, ale obrovským celkovým výkonem.

Rozdíl se projevuje v FLOPS (operacích s plovoucí čárkou za sekundu). Nejlepší mobilní SoC roku 2025: CPU — 200 GFLOPS, GPU — 2400 GFLOPS. GPU překonává CPU 12krát u úloh umožňujících paralelismus. U sekvenčních algoritmů však CPU zůstává rychlejší kvůli nižším režiím na správu vláken.

V praxi vývojář používá CPU pro logiku aplikace, UI a IO, a GPU pro rendering, zpracování obrazu, simulaci fyziky a inferenci neuronových sítí. Podle Google Android Performance Patterns (2025) činí optimální zatížení GPU v mobilních aplikacích 60–80 % — přetížení vede k throttlingu a přehřívání.

cpp
// CPU — sekvenční zpracování
for (int i = 0; i < N; i++) {
    result[i] = data[i] * 2.0f;
}

// GPU — paralelní zpracování (GLSL compute shader)
#version 300 es
layout(local_size_x = 256) in;
void main() {
    uint idx = gl_GlobalInvocationID.x;
    result[idx] = data[idx] * 2.0f;
}

Kód na CPU provádí násobení sekvenčně pro každý prvek. Verze GPU spouští 256 vláken paralelně, každé násobí svůj prvek. Při N=1 milionu provede GPU úlohu 100–1000krát rychleji než CPU na jednom jádře.

GPU v mobilních zařízeních

Mobilní GPU pracují v přísných omezeních tepelného výdeje a spotřeby energie. Typické TDP mobilního GPU je 2–8 W, oproti 150–450 W u stolních protějšků. To vyžaduje speciální architekturu s důrazem na energetickou účinnost, nikoli špičkový výkon.

Hlavní technologie úspory energie — Tile-Based Rendering. Snímek je rozdělen na dlaždice 16×16 nebo 32×32 pixelů. Každá dlaždice je zpracována celá v rychlé paměti SRAM (Tile Memory) a poté zapsána do externí DRAM. To snižuje přístupy do paměti 4–10krát ve srovnání s immediate mode.

Qualcomm Adreno — nejrozšířenější mobilní GPU. Adreno 750 (Snapdragon 8 Gen 3) obsahuje 12 shader procesorů se společným fondem registrů. Podporuje Vulkan 1.3, OpenGL ES 3.2, OpenCL 3.0 a ray tracing na úrovni jádra. Podle Qualcomm (2025) přináší Adreno 45% nárůst výkonu na generaci při zachování spotřeby energie.

ARM Mali — druhý nejoblíbenější GPU v zařízeních s Androidem. Mali-G720 je založen na architektuře Valhall 5. generace s podporou Variable Rate Shading a ASTC HDR. Zvláštností Mali je kvartetové zpracování: čtyři vlákna jsou sloučena do jednoho warpu pro lepší využití ALU.

Apple GPU je navržen výhradně pro Metal API. Od A13 Bionic používá Apple vlastní design GPU s podporou Metal 3, ray tracingu a mesh shaderů. Architektura Apple GPU se vyznačuje Unified Memory s propustností až 800 GB/s na M4 Ultra.

Spotřeba energie a throttling

Throttling GPU — snižování frekvence při přehřívání — hlavní problém mobilních her. Při dlouhodobém zatížení dosahuje teplota SoC 85–95 °C a GPU snižuje frekvenci o 30–50 %. Podle AnandTech (2025) ztrácí Qualcomm Adreno 750 až 35 % výkonu po 15 minutách v Genshin Impact.

Vývojář může throttling zmírnit pomocí optimalizace draw volání, snížení rozlišení renderingu a použití Foveated Rendering. Metal Performance Shaders na iOS a Android Frame Pacing API na Android pomáhají synchronizovat zátěž s tepelným rozpočtem zařízení.

GPGPU: výpočty na GPU

GPGPU (General-Purpose computing on GPU) — využití grafického procesoru pro negrafické výpočty. Nápad vznikl v polovině 2000. let, když si vývojáři všimli, že shadery lze přizpůsobit pro maticové operace, kryptografii a simulaci fyziky.

Dnes je GPGPU standardním nástrojem pro úlohy vyžadující hromadný paralelismus: strojové učení (trénování a inference neuronových sítí), kryptografie (hashování, šifrování), zpracování obrazu a videa (filtry, kodeky), vědecké simulace (hydrodynamika, kvantová chemie).

Na mobilních zařízeních se GPGPU aplikuje prostřednictvím Compute Shaders — shaderů bez grafického výstupu, pracujících pouze s daty. Compute Shader spouští Grid pracovních skupin, každá skupina obsahuje několik vláken. Přístup k paměti — přes buffery a textury bez vazby na obrazovku.

glsl
#version 310 es
layout(local_size_x = 16, local_size_y = 16) in;
layout(binding = 0) buffer Input  { float data[]; };
layout(binding = 1) buffer Output { float result[]; };

void main() {
    uvec2 idx = gl_GlobalInvocationID.xy;
    uint offset = idx.y * gl_NumWorkGroups.x * gl_WorkGroupSize.x + idx.x;
    result[offset] = sqrt(data[offset]) + 1.0;
}

Příklad compute shaderu počítá druhou odmocninu pro každý prvek pole. Pracovní skupina 16×16 zpracovává 256 prvků současně. Moderní mobilní GPU podporují až 1024 pracovních skupin a miliony globálních vláken.

API pro práci s GPU

API pro přístup k GPU určují, jak vývojář odesílá příkazy a data na grafický procesor. Na mobilních platformách se používají tři hlavní API: Vulkan, Metal a OpenGL ES. Každé má své výhody a omezení, které ovlivňují výkon a kompatibilitu.

Vulkan

Vulkan — nízkoúrovňové multiplatformní API od Khronos Group, nástupce OpenGL. Vulkan poskytuje vývojáři přímou kontrolu nad pamětí GPU, frontami příkazů a synchronizací. Podle Khronos (2025) přináší Vulkan 30–60% nárůst výkonu oproti OpenGL ES díky snížení režie ovladače.

Na Androidu je Vulkan povinný od Android 7.0 (API 24), ale všechna moderní SoC podporují Vulkan 1.3. Vulkan Memory Allocator a SPIR-V jako mezikód umožňují psát shadery v GLSL, HLSL nebo Rust GPU.

Metal

Metal — proprietární API Apple pro GPU na všech zařízeních ekosystému: iPhone, iPad, Mac, Apple TV. Metal zajišťuje minimální režii a předvídatelnou dobu provádění příkazů. Podle Apple Developer Documentation (2025) zpracovává Metal až 100 000 draw volání na snímek bez poklesu FPS.

Klíčová vlastnost — Metal Shading Language (MSL) založený na C++. Shadery jsou kompilovány do strojového kódu spolu s aplikací, což eliminuje JIT kompilaci typickou pro Vulkan. Metal podporuje Mesh Shaders, Ray Tracing a Dynamic Libraries pro načítání shaderů za běhu.

OpenGL ES

OpenGL ES — zjednodušená verze OpenGL pro vestavěné systémy. Používá se na starších zařízeních a pro zajištění zpětné kompatibility. OpenGL ES 3.2 je podporován na 94 % zařízení s Androidem podle Android Studio (2025). Pro nové projekty Google doporučuje Vulkan místo OpenGL ES.

WebGL — prohlížečový analog OpenGL ES, základ 3D grafiky na webu. WebGL 2.0 (odpovídá OpenGL ES 3.0) je podporován na 92 % mobilních prohlížečů. WebGPU — další generace s architekturou blízkou Vulkan a Metal.

Často kladené otázky

Čím se liší mobilní GPU od stolního?

Mobilní GPU pracuje v tepelném paketu 2–8 W, využívá Tile-Based Rendering pro úsporu energie a sdílí paměť s CPU přes UMA. Stolní GPU spotřebovává 150–450 W, má samostatnou video paměť (GDDR) a používá Immediate Mode Rendering.

Který mobilní GPU je nejvýkonnější v roce 2026?

Apple GPU v čipech M4 Ultra a A18 Pro — lídr ve výkonu na watt mezi mobilními GPU. Mezi zařízeními s Androidem vede Qualcomm Adreno 850 v Snapdragon 8 Gen 4 a ARM Mali-G925 v MediaTek Dimensity 9500.

Lze použít GPU pro strojové učení na mobilních zařízeních?

Ano, GPU se aktivně používá pro inferenci neuronových sítí prostřednictvím Core ML na iOS a TensorFlow Lite / NNAPI na Androidu. Podle Google (2025) poskytuje GPU akcelerace 3–10násobné zvýšení rychlosti oproti CPU.

Proč se GPU v mobilních hrách zahřívá a throttluje?

Throttling nastává kvůli překročení tepelného rozpočtu. Při dlouhodobém zatížení dosahuje teplota SoC 85–95 °C a GPU snižuje frekvenci na ochranu čipu. Řešením je optimalizace renderingu a použití FPS limitů (30–45 FPS).

Které API zvolit pro GPU grafiku na Androidu?

Vulkan — hlavní volba pro nové projekty. OpenGL ES — pro zpětnou kompatibilitu se staršími zařízeními. Metal — povinný pro iOS. Pro multiplatformní vývoj použijte frameworky jako Unity, Unreal Engine nebo Filament.

Shrnutí

  • GPU — specializovaný procesor s tisíci jader pro paralelní zpracování dat a akceleraci grafiky.
  • Architektura GPU využívá SIMD pipeline, Tile-Based Rendering a Unified Memory pro mobilní SoC.
  • GPU vs CPU: GPU překonává CPU 10–12krát v FLOPS u úloh s hromadným paralelismem, ale zaostává u sekvenčních algoritmů.
  • Mobilní GPU od Qualcomm, ARM, Apple a Imagination pracují v přísném limitu 2–8 W a podléhají throttlingu.
  • GPGPU prostřednictvím Compute Shaders se aplikuje pro ML, kryptografii, zpracování obrazu a vědecké simulace.
  • Vulkan a Metal — hlavní API pro moderní mobilní aplikace poskytující nízkoúrovňovou kontrolu nad GPU.
  • Optimalizace GPU zahrnuje správu draw volání, FPS limity a použití Foveated Rendering pro snížení tepelného výdeje.

Vyvineme mobilní aplikaci na klíč

IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.

Prodiskutovat projekt

Přečtěte si také