在你的iOS设备测量图形性能

来源:http://www.cnblogs.com/chensheng12330/p/3947573.html

广泛使用的图形应用程序可以让你的应用程序从你的竞争对手脱颖而出。 但是除非你负责任地使用图形资源,应用程序会慢下来,看起来平庸的无论多么好你想呈现的图像。

使用三个跟踪模板中发现iOS图形部分,概要文件应用程序。确保帧速率足够高,你的图像不阻碍你的应用程序的性能。

测量核心动画图形性能

仪器使用核心动画仪器测量你的iOS设备上的应用程序的图形性能。 核心动画跟踪模板提供快速、轻量级的选择测量每秒的帧数呈现应用程序。该仪器并不是用来测量OpenGL ES的性能。 你可以很快看到你的应用程序框架呈现少于预期。 通过关联时你正在做什么样本,您可以识别你的代码,需要改进。

把你与应用程序的交互和结果显示在工具。 在 图是个 ,你可以看到的帧速率峰值应用变得明显更好。 不知道发生了什么事与设备在这些峰值,这将是自然为你想复制这些更高的帧速率在整个应用。然而,这些峰值是由于取向变化当设备之间改变景观和正常的取向。 不知道,一个方向变化的设备进行,你可能会花时间试图找到什么导致了性能提升。

图是个 核心动画显示帧率峰值跟踪模板

核心动画在细节窗格中包含几个有用的调试选项。 你不需要运行一个跟踪为了看到这些选项你的iOS设备上工作。 从目标弹出菜单选择正在运行的进程。

  • 颜色混合层。 显示了混合视图层。 多个视图层相互吸引的启用了混合以红色突出显示。 减少红色的在你的应用程序选择这个选项可以显著提高应用程序性能。 混合视图层往往是缓慢的原因表滚动。

  • 颜色热门作品绿色和红色。 标志着绿色或红色的观点。 认为可以使用缓存的光栅化在绿色标记。

  • 颜色复制图像。 以蓝色显示图像复制的核心动画。

  • 立即颜色。 当选择,删除执行color-flush操作时10毫秒的延迟。

  • 颜色偏差的图像。 地方洋红叠加在图像源像素不一致到目标像素。

  • 颜色Offscreen-Rendered黄色。 地方一个黄色覆盖在私生活方面呈现的内容。

  • 颜色OpenGL快速路径蓝色。 地方一个蓝色覆盖在内容脱离排字工人。

  • Flash更新区域。 你的iOS设备上颜色的地区在黄色区域是更新的图形处理器。

测量与OpenGL ES OpenGL活动分析跟踪模板

OpenGL ES分析模板措施和分析OpenGL ES活动为了检测OpenGL ES正确性和性能问题。 它还提供了你推荐的解决发现的问题。 它包括OpenGL 分析仪和OpenGL ES分析仪器。

让OpenGL ES分析仪应用提出建议

  1. 打开OpenGL ES iOS组分析模板。

  2. 单击弹出选择目标并选择你的iOS设备。

  3. 第二次单击弹出选择目标并选择你想要的应用分析。

  4. 点击录音按钮开始录制数据,锻炼你的OpenGL图形代码。

  5. 时,点击停止按钮停止在细节窗格中积累的问题。

错误细节窗格中列出,显示总出现,独特的事件,类别,总结,和(最左边)严重性代码,要么是最严重的红场,或一个橙色三角形那么严重。 当选择一个错误扩展细节窗格中提供的建议是关于如何解决发现的问题。

发现瓶颈与OpenGL ES司机跟踪模板

OpenGL ES司机跟踪模板也是用来测量应用程序的性能和为您提供更多的信息不仅仅是每秒的帧数,你的应用程序呈现。 扩展的细节窗格中显示所有收集的信息为一个特定的示例。 每个统计也可以显示在跟踪OpenGL ES驱动显示面板通过配置特定的统计。 关于提供的统计数据的详细信息,请参阅 OpenGL ES司机仪器 在 仪器用户参考 

图以 对于核心动画示例的详细信息

瓶颈的OpenGL应用程序通常有两种形式,一个GPU瓶颈或CPU瓶颈。 GPU瓶颈发生在GPU部队CPU等待信息多的信息来处理。 CPU瓶颈通常发生在GPU从CPU等信息才能处理它。 CPU瓶颈通常可以通过改变底层应用程序的逻辑来创建一个更好的GPU的信息流动。 下面显示的瓶颈和常见的症状列表的瓶颈:

  • 几何限制。 是否镶面利用率高。 如果是,那么顶点着色程序流程。

  • 像素有限。 是否呈现利用率高。 如果是,那么片段着色器流程。

  • CPU限制。 是否砖瓦匠和呈现的利用率很低。 如果这两个很低,性能瓶颈可能不是在OpenGL代码,你应该看看你的代码的整体逻辑。

转载于:https://www.cnblogs.com/chensheng12330/p/3947573.html

ios 性能优化之图形性能测试相关推荐

  1. iOS性能优化之耗电量

    iOS性能优化之耗电量 前言 最近在测试App的时候,发现手机特别容易发烫,我们都知道 ,如果手机容易发烫,那么耗电量肯定会相当大,手机电量使用的时间也会相对少:对此,我在工作之余抽了点时间,对手机的 ...

  2. iOS性能优化系列篇之“列表流畅度优化”工具篇

    这一篇文章是iOS性能优化系列文章的的第二篇,主要内容是关于列表流畅度的优化.在具体内容的阐述过程中会结合性能优化的总体原则进行分析,所以建议大家在阅读这篇文章前先阅读一下上一篇文章:iOS性能优化系 ...

  3. iOS 性能优化总结

    原文链接:https://github.com/skyming/iOS-Performance-Optimization 关于 iOS 性能优化梳理: 基本工具.业务优化.内存优化.卡顿优化.布局优化 ...

  4. iOS进阶开发-iOS性能优化-关东升-专题视频课程

    iOS进阶开发-iOS性能优化-3316人已学习 课程介绍         介绍了性能优化方法,其中包括内存优化.资源文件优化.延迟加载.持久化优化.使用可重用对象和并发访问等.这些内容都是非常重要的 ...

  5. iOS性能优化 - 启动优化

    APP的启动可以分为2种 冷启动(Cold Launch):从零开始启动APP: 热启动(Warm Launch):APP已经在内存中,在后台存活着,再次点击图标启动APP. APP启动时间的优化,主 ...

  6. iOS性能优化 - 耗电优化

    耗电来源: CPU处理: 网络: 定位: 图像. 如何优化: 1. 尽可能降低CPU.GPU功耗; 2. 少用定时器: 3. 优化I/O操作: 尽量不要频繁写入小数据,最好批量一次性写入: 读写大量重 ...

  7. ios 性能优化(一)

    逻辑优化 代码封装优化 代码执行效率优化 界面优化 离屏渲染优化 界面加载优化 逻辑优化 代码封装优化 代码的封装优化主要是细化代码的功能,每个功能单独提取出来做成一个方法,当其他地方需要用到同样功能 ...

  8. iOS性能优化:Instruments使用实战

    最近采用Instruments 来分析整个应用程序的性能.发现很多有意思的点,以及性能优化和一些分析性能消耗的技巧,小结如下. Instruments使用技巧 关于Instruments官方有一个很有 ...

  9. 转iOS性能优化:Instruments使用实战

    最近采用Instruments 来分析整个应用程序的性能.发现很多有意思的点,以及性能优化和一些分析性能消耗的技巧,小结如下. Instruments使用技巧 关于Instruments官方有一个很有 ...

  10. 开源 iOS 性能优化/调试辅助工具集 MTHawkeye

    MTHawkeye 是美图 iOS 团队在使用的调试辅助.性能优化辅助工具集,旨在帮助 iOS 开发者提升开发效率.辅助优化性能体验. 在产品开发周期内,我们引入 MTHawkeye 来帮助我们更快的 ...

最新文章

  1. ie下的placeholder原生js实现方法
  2. 正则化方法:L1和L2 regularization、数据集扩增、dropout
  3. eclipse java debug 日志输出到文件里面
  4. asp.net 一次性提交大量数据,服务器会报错,要在 web.config 中设置一下
  5. C++字符串处理操作符重载
  6. python 全部缩进一行_Python(48)语言参考2:词法分析
  7. Asp.Net 中Report Service (RDLC)动态绑定数据-学习笔记
  8. wince 6.0 pb
  9. 辞职腾讯去了小公司,从0到1搭建后端架构,工资就翻倍了
  10. mysql 导入导出 csv_mysql文件导入导出为csv格式
  11. oracle 启动 08103,数据库打开遭遇ORA-08103故障处理
  12. 微型计算机的主频很大程度上决定了计算机的运行速度,它是指__ _.,计算机试卷4...
  13. python依赖如何打包_python 打包依赖包安装
  14. 如何让Win10 新建txt文档, 默认格式UTF-8
  15. 重装系统后,文件数据被格式化如何恢复?
  16. 长沙到底有没有互联网?
  17. Module and Component
  18. 精彩WAP之旅--上海热线WAP站
  19. 用了两年的极点五笔,今天出问题了。。。
  20. ORACLE 复制表

热门文章

  1. 拓扑排序:如何确定代码源文件的编译依赖关系
  2. spark shell
  3. qmake构建项目详细讲解
  4. 美媒:中国可能引领“物联网”的进步
  5. Java编程的逻辑 (34) - 随机
  6. CCNA学习笔记12-NAT
  7. HTTP协议 通信过程介绍
  8. Visual Basic 2005 中的程式語言加強功能
  9. PHP设计模式——迭代器模式
  10. T-SQL语言(二)