近日,Google 正式宣布将会在Android 12 中弃用RenderScript API 。Renderscript 早在Android 3.0 ( Honeycomb )时代就被Google 引入使用了,成为了系统中的一个用于异构CPU/GPU 编程的API ,并且在一段时间内还成为了用于3D 渲染的API 。但随着Android 版本升级,对Renderscript 的要求也越来越高,很多时候Renderscript 的使用就显得并不是那么得心应手了,而Google 也曾为这款API 的设计作出让步。随着GPU 计算通过Vulkan 甚至OpenGL 的实现,如今RenderScript 存在的意义已经不大了。

Google 在Android 开发者博客中提及,其实早已不建议将RenderScript 用于对性能需求至关重要的任务, Android 开发者应该转向可在GPU 硬件层级上高效运作、且具有出色的跨平台体验的Vulkan API 。并且还提供了一个示例,对比了RenderScript 与Vulkan API 的运行差异。
对于那些缺乏Vulkan 支援的旧装置,开发者们将不得不维护两套代码方案。但Google 开源了一个Android 库用来代替大多数不再被推荐使用的Intrinsics 函数。该库为大多数RenderScript 内部函数提供了高度优化的CPU 实现,据悉这个开源库除了BLAS 外,其他功能都能够实现。从对比中可以发现,这个新库对CPU 的执行速度更快。
Google 最后还表示到, RenderScript 虽还可以继续在Android 12 上运行,但开发者会在编译RenderScript 代码时收到相关警告。