安卓手机GPU OpenCL总结

 前段时间,把市面上手机GPU OpenCL支持情况做了一个总结。总结如下:

目前,手机 GPU 市面有四个公司产品:Qualcomm, Imagination Technologies,ARM, Vivante,分别对应的产品如下: (所有表格均是按照产品上市时间先后排列)

                                              表1 Qualcomm GPU

产品型号 OpenCL支持
Adreno 200系列 不支持
Adreno 300 系列 √(OpenCL 1.1)
Adreno 400 系列 √(OpenCL 1.1)
对于高通平台的手机,OpenCL的库在/system/vendor/lib/libOpenCL.so中。


                                           表2  Imagination Technologies GPU

产品型号 OpenCL支持
PowerVR Series 5 不支持
PowerVR Series 5XT √(OpenCL 1.1) SGX543, SGX544, SGX554
PowerVR Series 6 √(OpenCL 1.2)
PowerVR Series 6XE √(OpenCL 1.2)
PowerVR Series 6XT √(OpenCL 1.2)

对于PowerVR GPU的手机,OpenCL的库在/system/vendor/lib/libPVROCL.so

                                                    表3  ARM GPU

产品型号 OpenCL支持
ARM Mali400MP 不支持
ARM Mali450MP 不支持
ARM Mali Series 600 √(Full Profile OpenCL1.1)
ARM Mali Series 700 √(Full Profile OpenCL1.1)
      ARM Mali支持OpenCL的GPU手机,现在市面上还是比较少的(下半年开始,随着新手机的上市,6系列GPU的上市,这一状况会改变的),据我目前查到的情况,刚上市的华为荣耀6是mali T628。没有试用过,不知道系统是否自带OpenCL的库。不过自己也尝试下载自带的OpenCL SDK编译出了OpenCL的库(请移步 这里)。


      至于Vivante GPU,官网上号称是都支持OpenCL的,市面上采用它的GPU手机太少了,目前我只知道华为的K3V2芯片,不过在华为P6测试的结果系统没有自带OpenCL库。自己也没去折腾Vivante GPU的SDK,所以具体情况不是很清楚。


    ps:在我的手机上对高斯滤波对比过RendScript与 OpenCL,采用同样的策略,RenderScript比OpenCL慢了很多。从性能来说,放弃了RendScript的方案


你可能感兴趣的:(OpenCL,android)