imx6q android jni,Android 显示系统:飞思卡尔平台图形界面与GPU硬件加速

图形是Android平台中的一个大主题,包含java/jni图形框架和2d/3d图形引擎(skia、OpenGL-ES、renderscript)。

本文档描述了飞思卡尔设备上的一般Android图形堆栈和UI特性。

1. Androidt图形堆栈

所有Android 3D应用和游戏都有如下图形堆栈:

68ba205724d4f4cdf8ed5ef9d86bdc9d.png

Android系统UI和所有应用程序UI遵循如下二维图形堆栈,硬件渲染将使用GPU HW OpenGL-ES 2.0加速二维UI,提高性能。

e46ca158729ab3608ba9259f6b6ac8c9.png

硬件加速可以在i.mx6上通过device/fsl/imx6/soc/imx6dq.mk设置关闭:

USE_OPENGL_RENDERER := false

然后重新编译frameworks/base/core/jni 替换 libandroid_runtime.so

Surfaceflinger 负责显示层的合成, 然后为显示设备对应framebuffer生成数据,图像显示层来自 2D/3D 应用.

9610f900e0d0617fe29f7b6069b9e0b3.png

Surfaceflinger中Hwcomposer是OpenGL-ES接口的替代模块,Hwcomposer用于合成供应商设备支持的特定界面。飞思卡尔 i.MX6设备使用GPU 2D合成大部分界面。使用GPU 2D代替GPU 3D可以降低系统功耗,典型的节电场景如:视频回放。

Hwcomposer使用GPU 2D,可以在运行游戏和基准测试时减轻GPU 3D负载,系统总体性能提高约20%。

528f5f702326f84e6c64b3d18c7571ba.png

2. 性能测量

显示FPS体现Android系统性能

如果是NFS启动,需要在init.freescale.rc 中设置 “setprop debug.sf.showfps 1” ,然后重启。

对于SD或EMMC启动方式,可以设置 “setprop debug.sf.showfps 1”,然后kill system_server来重置系统。

17f685773b577da3fceea1249fe0ab82.png

三维能力测量的图形基准

Quadrant

完整的测试基准包括CPU,内存,IO, 2D和3D

GLBenchmark

NenaMark2

An3DBench

AnTutu

3DMark

浏览器的标准

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值