是否有任何Android设备在GPU上而不是CPU上执行renderscript,或者这是否在任何地方都没有实现?
答案 0 :(得分:9)
答案 1 :(得分:3)
我无法确认Google的任何官方文档,但我每天都在使用RenderScript,每次运行时,我都会看到logcat报告在我的设备中加载图形芯片的驱动程序,最明显的是Tegra 2. Google已经在记录RenderScript方面真的落后了,如果他们在讨论中没有纠正这个遗漏,我一点都不会感到惊讶。
答案 2 :(得分:2)
目前Renderscript的计算端只能在CPU上运行:
目前,计算Renderscripts只能利用CPU核心,但将来它们可能会运行在其他类型的处理器上,如GPU和DSP。
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计算。