RenderScript是用于移动设备的Android操作系统的一个组件,它提供了一个利用异构
硬件加速的API。 它允许开发人员以编写更复杂(更低级别)的代码为代价来提高应用程序的性能。
RenderScript是在Android 3.0 Honeycomb中添加的。从Android 4.1开始,Renderscipt的实验性3D渲染API已被弃用,仅作为计算API存在。
Android 4.2增加了新功能来编写内部函数,例如Blend和Blur; 以及允许您链接相关RenderScript脚本并通过一次调用执行它们的ScriptGroups。
最近,谷歌添加了FilterScript,它是RenderScript的一个子集,允许开发人员使用标准的RenderScript运行时API在FilterScript中编写图像处理操作,但在更严格的约束条件下确保更广泛的兼容性并改进跨多核CPU,GPU, 和DSP。 FilterScript在数字数据类型精度方面不够精确,并且与RenderScript有更多跨设备兼容的子集 - 不应该被误认为RenderScript替代技术。
RenderScript可移植性取决于特定于设备的驱动程序:[3]为每个设备提供基本的仅CPU驱动程序,同时存在一些特定的芯片组提供的RenderScript驱动程序,用于启用GPU使用(例如,Qualcomm特定的驱动程序,这些驱动程序在libRSDriver_adreno .so Android库)。
RenderScript设计用于在运行时调整任务,可以在底层硬件上高效地分割和同时运行。从Android 4.2开始,除了支持的系统上的CPU,RenderScript已经扩展到GPU上运行。
RenderScript还不能表示片上线程间通信(OpenCL中的本地内存,以及CUDA中的共享内存)RenderScript不能用
双线性插值(在CUDA中称为纹理,在OpenCL中读取图像)表示硬件实现的2D和3D查找。