| レンダリングスクリプト | |
|---|---|
| 開発者 | グーグル |
| オペレーティング·システム | Android(オペレーティング システム) |
| Webサイト | developer.android.com/guide/topics/renderscript/compute |
RenderScriptは、モバイルデバイス向けAndroidオペレーティングシステムの非推奨コンポーネントであり、異機種ハードウェアの性能を活用したアクセラレーションAPIを提供します。開発者はRenderScriptを使用することで、より複雑な(低レベルの)コードを記述することで、アプリケーションのパフォーマンスを向上させることができます。
開発者には、シンプルな 3D レンダリング API、 CUDAに似たコンピューティング API 、C99派生言語という 3 つの主要なツールが提供されます。
歴史
RenderScriptはAndroid 3.0 Honeycombで追加されました。[1]
Android 4.1 以降、RenderScript の実験的な3D レンダリング API は非推奨となり、現在はコンピューティング API としてのみ存在します。
Android 4.2では、スクリプト組み込み関数にBlendやBlurなどの新機能が追加され、 ScriptGroupsでは関連するRenderScriptスクリプトをグループ化して1回の呼び出しで実行できるようになりました。また、FilterScriptも追加されました。これはRenderScriptのサブセットで、開発者は標準のRenderScriptランタイムAPIを使用してFilterScriptで画像処理操作を記述できますが、制約がより厳しくなり、マルチコア CPU、GPU、DSP間での互換性が高まり、最適化も向上します。FilterScriptは浮動小数点精度が低く、デバイス間の互換性が高いRenderScriptのサブセットであるため、RenderScriptの代替技術と間違えないようにしてください。[2]
2021年4月19日、GoogleはAndroid 12でRenderScriptが廃止されることを発表し、既存のコードをVulkanに移植することを推奨した。[3]
特徴
携帯性
RenderScriptは、ハードウェアの種類に関係なく、さまざまなAndroidプラットフォームで常に実行できるように設計されています。パフォーマンスチューニングは実行時に行われます。
RenderScriptの移植性はデバイス固有のドライバに依存します。[4]基本的なCPU専用のドライバはすべてのデバイスに提供されていますが、GPUの使用を可能にする特定のチップセット提供のRenderScriptドライバもいくつか存在します(例:libRSDriver_adreno.soAndroidライブラリで提供されているQualcomm固有のドライバ)。
パフォーマンス
RenderScriptは、実行時にタスクをチューニングし、基盤となるハードウェア上で効率的に分割して同時に実行できるように設計されています。[5]
Android 4.2以降、RenderScriptはサポートされているシステムではCPUに加えてGPUでも実行できるように拡張されました。[6]
制限事項
- RenderScript はまだオンチップのスレッド間通信 ( OpenCLではローカル メモリ、CUDA では共有メモリと呼ばれます) を表現できません。
- RenderScript では、ハードウェア実装の 2D および 3D ルックアップを双線形補間 (CUDA ではテクスチャ、OpenCL ではイメージ読み取りと呼ばれます) で表現することはまだできません。
参考文献
- ^ 「ハニカム」。
- ^ 「Android 4.2 API」 。 2013年3月20日閲覧。
- ^ 「Android GPUコンピューティングの今後の展望」Android開発者ブログ。 2021年4月19日閲覧。
- ^ Marchetti, Alberto (2016). RenderScript: Androidでの並列コンピューティングの簡単な方法(第1版). 2016年8月25日時点のオリジナルよりアーカイブ。 2016年7月5日閲覧。
- ^ 「レンダリングスクリプト パート 2」。
- ^ 「Jelly Bean - レンダリングスクリプトのパフォーマンス」 。 2012年11月27日閲覧。
外部リンク
- Google デベロッパー ページ
- Renderscriptの紹介
- レンダリングスクリプトパート2
- GoogleがHoneycomb向け低レベルRenderscript APIの詳細を発表
- ビデオ: Romain Guy と Chet Haase による RenderScript の学習 2011-08-09 にWayback Machineでアーカイブ
- Android Studio で Renderscript を設定するためのガイド