最新版 android adt 中包含了opengles trace 选项。高通提供了一个adreno gpu上的性能分析工具,可以直接分析android / PC上opengles应用程序的性能。
window / show view / other / 打开opengles trace视图并单击进入,右上角显示如图:
如下图单击v型按钮:
配置gltrace,关联activity,设置gltrace文件保存目录:
gltrace进度对话框:
refer URL:https://developer.qualcomm.com/mobile-development/mobile-technologies/gaming-graphics-optimization-adreno/tools-and-resources
tools目录下。
软件具体使用看帮助文档,
1. 打开手机上opengles开发的应用程序
2. 打开软件,点击connect
3. new 一个 grapher页面,然后在右边树状列表中双击打开相应视图,常用的是Grapher Metrics 下的EGL / FPS和GPU General / Busy
实测:
数据量:
03-01 15:46:29.482: I/VBO(10518): position size = 1458000
03-01 15:46:29.482: I/VBO(10518): normal size = 1458000
03-01 15:46:29.482: I/VBO(10518): texture size = 972000
HTC G10上实测,当顶点、法线、纹理数据量均在1M左右时 vertex array和vbo才能有明显区别。
如上图,采用VBO绘制,FPS在50左右,GPU Busy在100%左右;当切换到vertex array时fps在30左右,GPU Busy在80%左右。