带有rs_allocation数组的Renderscript无法在GPU上运行

时间:2014-03-24 18:01:13

标签: android renderscript

我的开发环境如下:

Device: Nexus 5
Android: 4.4.2
SDK Tools: 22.6.1
Platform Tools: 19.0.1
Build tools: 19.0.3
Build Target: level 19
Min Target: level 19

问题是当我尝试将rs_allocation数组放在.rs文件中时,例如

rs_allocation[3] allocs
<。>在.rs文件中,一切似乎都很好,它编译,java胶水代码正确生成,代码运行正常。只是我发现代码总是最终运行在CPU而不是GPU(由CPU使用率告诉)。如果我不使用rs_allocation数组并直接使用rs_allocation,则代码在GPU上运行。我想知道这是否是当前的限制。或者我错过了什么?谢谢。

1 个答案:

答案 0 :(得分:1)

是的,这并不意外。取决于如何读取分配,GPU驱动程序可能存在此问题。例如,多年来,使用CUDA的NV GPU不支持纹理阵列 - 我想直到费米。它将根据供应商,芯片和驱动程序版本而有所不同。