GPGPU Výpočty pomocí grafických procesorů Zpracoval Martin Přeták
GPU a GPGPU GPU - Graphic Processing Unit grafický procesor který se nachází na grafické kartě nebo je integrován na základní desce slouží pro grafické výpočty a poskytuje vysoký výkon ve výpočtech v plovoucí desetinné čárce GPGPU - General-purpose computing on graphics processing units díky vysokému výkonu je snaha využít GPU i pro jiné než grafické operace ty mohou být pomocí GPU několikanásobně rychlejší než za pomoci CPU (procesoru)
GPU vs CPU GPU je optimalizováno pro jednodušší aritmetické výpočty nad maticemi a vektory neobsahuje tolik instrukcí jako CPU, méně vnitřní logiky CPU obsahují 2 – 8 plnohodnotných jader, GPU až 880 stream procesorů umožňuje obrovské množství paralelních operací Výkon CPU do 100 Gflops, GPU až 2700 Gflops
Zabudování do aplikace Pro vytváření aplikací využívajících GPGPU jsou k dispozici 3 knihovny CUDA – nVidia DirectCompute – Microsoft OpenCL - Khronos Group Jedná se o API, která jsou přímo určena pro programování nad GPU ale neobsahují pouze instrukce pro grafické výpočty jako například OpenGL nebo DirectX
Možnosti využití GPU je vhodné pro paralelní operace pro pole a matice, kde jsou jednotlivé položky na sobě nezávislé Příklad využití: dekódování videa zpracování zvuku (Digital signal processing) úprava fotek (Tone mapping) Ray tracing neuronové sítě bioinformatika databáze šifrování výkon GPU se projevuje hlavně v aplikacích s velkým počtem vláken, pokud aplikace používá 2 – 3 vlákna, zvýšení výkonu je minimální
Příklad aplikace Cyberlink PowerDirector 7 Jedná se o aplikaci pro úpravu videa, využívá akceleraci pomocí knihovny nVidia CUDA
Konec Materiály: