レンダースクリプトがCPUではなくGPUで実行されるAndroidデバイスはありますか、それともこれはまだどこにも実装されていませんか?
6 に答える
Googleの公式ドキュメントでは確認できませんが、毎日RenderScriptを使用しており、実行するたびに、デバイス、特にTegra2のグラフィックチップのドライバーをロードするlogcatレポートが表示されます。Googleは本当に遅れています。 RenderScriptを文書化しており、彼らが議論の中でこの省略を単に修正していなくても、私はまったく驚かないでしょう。
現在、Renderscriptの計算側はCPUでのみ実行されます。
現在のところ、コンピューティングRenderscriptはCPUコアのみを利用できますが、将来的には、GPUやDSPなどの他のタイプのプロセッサで実行できる可能性があります。
Renderscript開発ガイドから取得。
Renderscriptのグラフィックス側はOpenGLESの上にあるため、シェーダーはGPU上で実行されます。
ARMのMali-T604GPUは、Renderscriptのコンピューティング側のターゲットを提供します(将来のAndroidリリースでは?)(ARMブログエントリを参照)。
これは、グラフィックス操作を行っているのか、計算操作を行っているのかによって異なると思います。グラフィックス操作はGPUで実行される可能性がありますが、計算操作は私が理解している限りでは実行されません。
forEach構文を使用すると、計算はGPUではなくCPU上の複数のスレッドで実行されます(これはICSソースコードで確認できます)。将来のリリースでは、これは変更される可能性があります(https://events.linuxfoundation.org/slides/2011/lfcs/lfcs2011_llvm_liao.pdfを参照)が、発表はありません。
RenderScriptの設計は、GPU上で実行されるようになっています。これが新しい言語を追加する主な目的でした。サポートがないためにCPUで実行されるデバイスがあると思いますが、ほとんどのデバイスではGPUで実行されます
現在、Nexus10のみがRenderscriptGPUコンピューティングをサポートしているようです。