Android 显示系统:飞思卡尔平台图形界面与GPU硬件加速
图形是Android平台中的一个大主题,包含java/jni图形框架和2d/3d图形引擎(skia、OpenGL-ES、renderscript)。
本文档描述了飞思卡尔设备上的一般Android图形堆栈和UI特性。
1. Androidt图形堆栈
- 所有Android 3D应用和游戏都有如下图形堆栈:

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

硬件加速可以在i.mx6上通过device/fsl/imx6/soc/imx6dq.mk设置关闭:
USE_OPENGL_RENDERER := false
然后重新编译frameworks/base/core/jni 替换 libandroid_runtime.so
- Surfaceflinger 负责显示层的合成, 然后为显示设备对应framebuffer生成数据,图像显示层来自 2D/3D 应用.

- Surfaceflinger中Hwcomposer是OpenGL-ES接口的替代模块,Hwcomposer用于合成供应商设备支持的特定界面。飞思卡尔 i.MX6设备使用GPU 2D合成大部分界面。使用GPU 2D代替GPU 3D可以降低系统功耗,典型的节电场景如:视频回放。
Hwcomposer使用GPU 2D,可以在运行游戏和基准测试时减轻GPU 3D负载,系统总体性能提高约20%。

2. 性能测量
- 显示FPS体现Android系统性能
如果是NFS启动,需要在init.freescale.rc 中设置 “setprop debug.sf.showfps 1” ,然后重启。
对于SD或EMMC启动方式,可以设置 “setprop debug.sf.showfps 1”,然后kill system_server来重置系统。

- 三维能力测量的图形基准
Quadrant
完整的测试基准包括CPU,内存,IO, 2D和3D
GLBenchmark
NenaMark2
https://market.android.com/details?id=se.nena.nenamark2
An3DBench
http://www.androidzoom.com/android_applications/tools/an3dbench_hnog.html
AnTutu
http://www.antutu.com/software.html
3DMark
http://www.futuremark.com/benchmarks/3dmark06/introduction/
- 浏览器的标准
http://www.webkit.org/perf/sunspider/sunspider.html
http://v8.googlecode.com/svn/data/benchmarks/current/run.html
http://www.craftymind.com/guimark2/
http://www.craftymind.com/factory/guimark/GUIMark_HTML4.html
http://themaninblue.com/writing/perspective/2010/03/22/
Android 显示系统:飞思卡尔平台图形界面与GPU硬件加速的更多相关文章
- Android 显示系统:SurfaceFlinger详解
一.Android系统启动 Android设备从按下开机键到桌面显示画面,大致过程如下图流程: 开机显示桌面.从桌面点击 App 图标到 Activity显示在屏幕上的过程又是怎样的呢?下面介绍And ...
- 11.1 Android显示系统框架_framebuffer原理及改进
1. Android显示系统框架Android Graphic UI with GPU Hardware Accelerationhttps://community.nxp.com/docs/DOC- ...
- Android 显示系统:OpenGL简介和Gralloc代码分析
一.OpenGL ES与EGL Android的GUI系统是基于OpenGL/EGL来实现的. 由于OpenGL是通用函数库,在不同平台系统上需要被“本土化”——把它与具体平台的窗口系统建立起关联,F ...
- 11.5 Android显示系统框架_Vsync机制_黄油计划_三个方法改进显示系统
5. Vsync机制5.1 黄油计划_三个方法改进显示系统vsync, triple buffering, vsync虚拟化 参考文档:林学森 <深入理解Android内核设计思想>第2版 ...
- Android 显示系统:Vsync机制
一.Vsync简介: 屏幕的刷新过程是每一行从左到右(行刷新,水平刷新,Horizontal Scanning),从上到下(屏幕刷新,垂直刷新,Vertical Scanning).当整个屏幕刷新完毕 ...
- Android调用系统自带的设置界面
Android有很多系统自带的设置界面,如设置声音,设置网络等. 在开发中可以调用这些系统自带的设置界面. 点击以下列表中的选项,就可以调出相应的系统自带的设置界面. 如点击“无线和网络设置”,可以调 ...
- CentOS最小化系统,怎么安装图形界面
CentOS最小化系统做服务器,都是没有图形界面的.很多初学者不习惯命令行操作,那么应该怎么安装图形界面?本经验咗嚛以centos6.5系统为例 方法步骤: 首先进入centos系统界面,先测 ...
- CentOS 7 系统下安装gnome图形界面
在安装Gnome 包之前,我们需要先检查下安装源是否正常,因为我们要通过yum命令来安装gnome包, 而yum命令式通过yum 源来下载安装包的. 1.在命令行下输入下面的命令来安装 Gnome 包 ...
- Android Studio 使用笔记:在图形界面使用 Gradle 配置项目所需jar包
在 Android Studio 中使用第三方 jar 包,可以直接下载后添加到项目中,也可以使用 Gradle 配置进行管理.图形界面下十分简单. 点击下图中间的图标,或者选中 Model ,按F4 ...
随机推荐
- selenium网页截图和截图定位(无界面)phantomjs
phantomjs是一款软件,需要重新安装. 参考: https://blog.csdn.net/liyahui_3163/article/details/79064108 案例代码: from se ...
- Free lunch is over
译文:http://www.mamicode.com/info-detail-1324737.html 原文:http://www.gotw.ca/publications/concurrency-d ...
- python链接sql server 乱码问题
import pymssql import sys import os reload(sys) sys.setdefaultencoding('utf-8') os.environ['NLS_LANG ...
- redis过期机制及排行榜
redis 内存数据集大小上升到一定大小的时候,就会施行数据淘汰策略.redis 提供 6种数据淘汰策略: volatile-lru:从已设置过期时间的数据集(server.db[i].expire ...
- 图像Image类、打印Printing相关
一.Images 1.概述 Image 类为Bitmap(位图) 和 Metafile(矢量图) 的类提供功能的抽象基类.Image类不能直接创建对象的,但Image.FromFile()返回的是Bi ...
- Python3基础学习-while循环实例- 猜数字游戏
需求: 猜数字游戏, 要求如下: 给个数字, 比如是66. 让用户一直猜,直到猜对退出. 中间输入q或Q也能退出 如果猜大了,提示用户猜小一点; 如果猜小了,提示用户猜大一点; likely = 66 ...
- CentOS7安装Ambari2.7.4过程【离线安装】
先配置免密码登录 修改所有结点的host 192.168.210.133 node1 192.168.210.134 node2 192.168.210.135 node3 192.168.210.1 ...
- SP703 SERVICE - Mobile Service
思路:DP 提交:1次 题解: 我们把处理到的要求作为阶段. \(f[i][x][y][z]\)表示第 \(i\) 个要求,三个人分别的位置. 发现这样有很多无用状态,因为显然在第 \(i\) 个要求 ...
- Web应用运行原理
web应用启动做了什么? 读取web.xml文件 - web.xml常用配置参数: 1).context-param(上下文参数)2).listener(监听器配置参数)3).filter(过滤器 ...
- @Component,@Service,@Controller,@Repository
1.@controller 控制器(注入服务) 2.@service 服务(注入dao) 3.@repository dao(实现dao访问) 4.@component (把普通pojo实例化到spr ...