RenderScript是在Android上运行GPGPU代码的唯一与设备无关的方式吗? 我不算Tegra,因为只有很少的手机拥有它。
答案 0 :(得分:0)
RenderScript是官方的Android计算平台。因此,它将在所有Android设备上。它专门用于解决在许多不同设备上运行一个代码库的问题。
答案 1 :(得分:0)
好吧,使用RenderScript并不一定意味着您的代码将在GPU上运行。它也可能使用CPU和(希望)在多个CPU内核上并行化任务并使用CPU向量指令。但据我所知,你永远无法确定这一点,决策过程就像是一个黑盒子。
如果您想确保您的代码在GPU上运行,您可以使用OpenGL ES 2.0着色器“模拟”某些GPGPU功能。这将在支持OpenGL ES 2.0的所有设备上运行。这取决于您想要做什么,但是例如,许多图像处理功能可以通过这种方式非常有效地实现。有一个名为ogles_gpgpu的库,它为Android和iOS系统上的GPGPU提供架构:https://github.com/internaut/ogles_gpgpu
OpenGL ES 3.1也支持“计算着色器”,但很少有设备支持此功能。