RenderScript - RenderScript

RenderScript
Vývojáři Google
Operační systém Android (operační systém)
webová stránka vývojář .android .com / průvodce / témata / renderscript / výpočet

RenderScript je součást operačního systému Android pro mobilní zařízení, která nabízí API pro akceleraci, které využívá heterogenní hardware. Umožňuje vývojářům zvýšit výkon jejich aplikací za cenu psaní složitějšího kódu (nižší úrovně).

Poskytuje vývojáři tři primární nástroje: jednoduché rozhraní pro 3D vykreslování, výpočetní rozhraní API podobné CUDA a jazyk odvozený od C99 .

Dějiny

RenderScript byl přidán do Android 3.0 Honeycomb.

Od Androidu 4.1 bylo zastaralé experimentální 3D vykreslování API RenderScript a nyní existuje pouze jako výpočetní API.

Android 4.2 přidal do funkcí skriptu nové funkce, například Blend and Blur ; stejně jako ScriptGroups, které umožňují seskupit a spustit související skripty RenderScript a spustit je jedním hovorem. Také přidal FilterScript, což je podmnožina RenderScript, která umožňuje vývojářům zapisovat své operace zpracování obrázků do FilterScript pomocí standardního běhového API RenderScript, ale v přísnějších omezeních, která zajišťují širší kompatibilitu a lepší optimalizaci napříč vícejádrovými CPU , GPU a DSP . FilterScript je méně přesný v přesnosti s plovoucí desetinnou čárkou a podmnožina RenderScript kompatibilní s více zařízeními - a neměla by být zaměňována s technologií nahrazení RenderScript.

19. dubna 2021 Google oznámil, že RenderScript bude v Androidu 12 zastaralý , a doporučil přenést stávající kód na Vulkan .

Funkce

Přenosnost

RenderScript je navržen tak, aby vždy fungoval na různých platformách Android bez ohledu na typ hardwaru. Ladění výkonu se provádí za běhu.

Přenositelnost RenderScript závisí na konkrétních ovladačích zařízení: pro každé zařízení je k dispozici základní ovladač pouze pro CPU, zatímco existují určité specifické ovladače RenderScript poskytované čipovou sadou, které umožňují použití GPU (např. Specifické ovladače Qualcomm, které jsou k dispozici v libRSDriver_adreno.so knihovně Android).

Výkon

RenderScript je navržen k vyladění úkolů za běhu, které lze efektivně rozdělit a současně spouštět na základním hardwaru.

Od Androidu 4.2 byl RenderScript rozšířen tak, aby běžel na GPU kromě CPU na podporovaných systémech.

Omezení

  • RenderScript ještě nemůže vyjadřovat komunikaci mezi vlákny na čipu (v OpenCL známou jako lokální paměť a v CUDA sdílená paměť).
  • RenderScript ještě nemůže vyjádřit hardwarově implementované 2D a 3D vyhledávání s bilineární interpolací (známé jako textury v CUDA a obrázky čtené v OpenCL).

Reference

externí odkazy