Android性能测试之界面显示GPU绘制
HierarchyViewer查看Activity布局是否过于复杂,开发者选项中的“调试GPU过度绘制”等选项观察Android App界面显示的性能瓶颈。
GPU过度绘制
Overdraw(过度绘制):屏幕上的某个像素在同一帧的时间内被绘制了多次。多层次的UI结构容易出现过度绘制,导致CPU、GPU资源浪费。
HierarchyViewer查看Activity布局是否过于复杂,开发者选项中的“调试GPU过度绘制”等选项观察Android App界面显示的性能瓶颈。
GPU过度绘制
Overdraw(过度绘制):屏幕上的某个像素在同一帧的时间内被绘制了多次。多层次的UI结构容易出现过度绘制,导致CPU、GPU资源浪费。
strace是一个基础的调试工具,类似windows系统的Procmon,用来监控进程的系统调用或信号产生的情况,通过跟踪系统调用定位Linux程序出现的问题,监控Linux进程在后台做了什么,大多数Linux系统中已经默认安装 。
Strace记录中每一行都是一条系统调用,开始是系统调用的函数名,括号内是参数,等号后面是该调用的返回值。
Umdh 是 Debugging Tools for Windows 中的工具,在windbg的安装目录内,UMDH主要通过分析比较进程的Heap Stack trace信息来发现内存泄露的。
Umdh测试程序内存泄露的方法:
1.设置环境变量_NT_SYMBOL_PATH,系统属性-高级-环境变量或者命令行et _NT_SYMBOL_PATH=C:/symbols。把被测程序的Symbol files (.pdb)
Context Switches 上下文切换,有时也被称为进程切换(process switch)或任务切换。是一个重要的性能指标。
CPU从一个线程切换到另外一个线程,需要保存当前任务的运行环境,恢复将要运行任务的运行环境,必然带来性能消耗。
Context Switches 上下文切换简介
操作系统可以同时运行多个进程, 然而一颗CPU同时只能执行一项任务,操作系统利用时
windows客户端程序性能测试必须要验证资源泄漏,资源泄漏常见的测试项有:cpu/内存/GDI/句柄/页面错