性能分析

  Aaron ·  2010-08-04 23:28  ·  12263 次点击
在软件工程中,性能分析(performanceanalysis也称为profiling),是以收集程序运行时信息为手段研究程序行为的分析方法。这种方法与静态代码分析相对。性能分析的目的在于决定程序的哪个部分应该被优化,从而提高程序的速度或者内存使用效率。
使用性能分析工具
性能分析工具(Profiler)是一个软件工具用于测量程序的执行,特别是函数调用频率和所耗费时间。输出以事件的记录流(踪迹trace,或者事件的数据汇总(轮廓profile)。性能分析工具使用很广泛的技术手段收集数据,包括硬件中断,代码指令,操作系统(钩子),CPU内置的性能计数寄存器等等。性能分析工具的使用称为性能工程学过程。
性能测量数据量与代码大小成线性关系,这是由于数据汇总(profile)的操作通常与产生事件的源代码位置相关。与之对比,事件的踪迹(trace)则与运行时长成线性关系,常使之不符合实际应用。对于顺序执行的程序,通常轮廓就足够了。但并行执行的程序的性能问题(等待消息或者同步问题)常常依赖于事件的关系,因此需要全部的踪迹才能找到问题。

0 条回复

暂无讨论,说说你的看法吧!

 回复

你需要  登录  或  注册  后参与讨论!