Android renderscript可以在GPU上运行吗?

时间:2012-06-10 16:03:03

标签: android renderscript

是否有任何Android设备在GPU上而不是CPU上执行renderscript,或者这是否在任何地方都没有实现?

6 个答案:

答案 0 :(得分:9)

从JellyBean 4.2开始,renderscript有一个直接的GPU集成。请参阅thisthis

答案 1 :(得分:3)

我无法确认Google的任何官方文档,但我每天都在使用RenderScript,每次运行时,我都会看到logcat报告在我的设备中加载图形芯片的驱动程序,最明显的是Tegra 2. Google已经在记录RenderScript方面真的落后了,如果他们在讨论中没有纠正这个遗漏,我一点都不会感到惊讶。

答案 2 :(得分:2)

目前Renderscript的计算端只能在CPU上运行:

  

目前,计算Renderscripts只能利用CPU核心,但将来它们可能会运行在其他类型的处理器上,如GPU和DSP。

取自Renderscript dev guide

Renderscript的图形面位于OpenGL ES之上,因此着色器将在GPU上运行。

ARM的Mali-T604 GPU将为Renderscript的计算端提供目标(在未来的Android版本中?)(参见ARM Blog entry)。

答案 3 :(得分:1)

RenderScript的设计使其能够在GPU上运行。这是添加新语言的主要目的。我假设有些设备因为缺乏支持而在CPU上运行,但在大多数设备上都运行在GPU上

答案 4 :(得分:1)

我认为这可能取决于您是在进行图形操作还是计算操作。图形操作可能会在GPU上执行,但计算操作不会达到我理解的程度。

当你使用forEach构造时,计算将在CPU上的多个线程中运行,而不是GPU(你可以在ICS源代码中看到这一点)。在将来的版本中,这可能会发生变化(请参阅https://events.linuxfoundation.org/slides/2011/lfcs/lfcs2011_llvm_liao.pdf),但我没有看到任何公告。

答案 5 :(得分:1)

目前,只有Nexus 10 seems to support Renderscript GPU计算。