入门:性能瓶颈检测

在应用程序中,性能瓶颈会降低应用程序应有的运行速度。“概要分析和记录”透视图中包括一些用于检查性能和检测瓶颈的视图。

可以使用下列视图来检测性能瓶颈:

收集用于检测性能瓶颈的数据

先决条件:
  • 必须在收集数据的机器上运行代理控制器。有关信息,请参阅安装指南。
    注: 如果想要分析分布式程序中的客户机与服务器之间的调用,则不能使用“代理控制器”来收集数据。而是应该使用 IBM Rational Performance Optimization Toolkit for Rational Performance Tester 中提供的 Tivoli ARM 数据收集器,并且该 Rational Performance Tester 中还提供了使用文档。如果您已经将程序的数据引导至跟踪文件(trcxml 文件),请阅读导入性能数据
  • 必须创建概要分析配置。请阅读入门:创建概要分析配置以确定运行时问题

要收集数据:
  1. 在“概要分析”对话框的“概要分析”页面上,选择下列其中一个概要分析集:
    • 执行历史记录 - 性能调用图。此概要分析集包含“性能调用图分析”概要分析类型,该类型使用压缩格式收集数据以加快数据收集过程。此概要分析类型支持除“UML2 时序图”视图之外的所有用于检测性能瓶颈的视图。
    • 执行历史记录 - 完整图形详细信息。此概要分析集包含“执行时间分析”概要分析类型,该类型支持用于检测性能瓶颈的所有视图。
  2. 单击概要分析以启动您的应用程序。
  3. 使用应用程序,运行您想用于调查性能瓶颈的例程。将收集性能数据,并记录在“性能调用图”概要分析资源或者“执行时间分析”概要分析资源中,这些资源都显示在“概要分析导航器”中。现在,您就可以终止应用程序了。

使用“性能调用图”和“方法详细信息”视图来检测性能瓶颈

“性能调用图”视图和“方法详细信息”视图都将显示运行时的特定时间的性能数据。“性能调用图”视图提供了整个运行的数据的全局视图,而“方法详细信息”视图则显示每个方法的数据。

要检测性能瓶颈:
  1. 显示“性能调用图”视图:右键单击已收集的数据的“性能调用图分析”或“执行时间分析”概要分析资源,然后单击打开方式 > 性能调用图
    • 该图最初将显示消耗时间最长的 20 个方法的节点。
    • 节点之间的线条表示调用路径。较粗的线条用于表示花费时间较长的调用路径。
    • 可以通过右键单击一个节点,然后单击弹出菜单中的一个命令,来管理显示在调用图中的数据。
  2. 找出您怀疑可能比正常情况下消耗了更多时间的方法。
  3. 双击该方法以打开“方法详细信息”视图。
  4. 将“性能调用图”视图和“方法详细信息”视图一起用来调查整个数据集。 每当选择一个新方法时,这两个视图就会同步。
  5. 要检查方法的源代码(如果提供了源代码的话),请在这些视图的任一视图中右键单击该方法,然后单击打开源代码

有关更多信息,请阅读检测性能瓶颈

使用“执行统计信息”视图

可以使用此视图来检查各个表中的性能统计信息,可以对这些性能统计信息进行排序以找出性能最低的包、类和方法。这些表将只显示有关花费在各个方法、类和包上的时间的统计信息;它们不会提供有关调用或调用关系的信息。

要使用此视图:
  1. 显示“执行统计信息”视图:右键单击已收集的数据的“性能调用图分析”或“执行时间分析”概要分析资源,然后单击打开方式 > 执行统计信息
  2. 单击包级别信息的图标 “包级别信息”按钮、类级别信息的图标 “类级别信息”按钮 或者方法级别信息的图标 “方法级别信息”按钮 来管理数据的显示。
  3. 使用此视图来将“性能调用图”和“方法详细信息”视图的重点放在检测潜在瓶颈上。

使用“执行流”、“方法调用”和“UML2 时序图”视图

通过使用这些视图,可以区分调用同一方法的不同方式。可以采用图形格式或表格格式来显示方法调用数据和执行流数据。

要使用这些视图:
  1. 要检查代码的性能的潜在热点,右键单击“性能调用图分析”或“执行时间分析”概要分析资源,然后单击打开方式 > 执行流 该视图将会显示整个程序执行的执行情况。可以放大它以重点关注热点。当您将光标悬浮在一个方法调用上时,位于该视图下边沿的状态行就会显示累积时间值。

    通过右键单击“执行流”视图,然后单击显示执行表,就可以采用表格式来查看上述信息。

  2. 要显示某一方法的单个调用的数据,在“执行流”视图或“执行流表”视图中选择该调用,进行右键单击,然后单击显示方法调用 注意,如果您使用的是缩放方式,则不能选择方法。
  3. 要显示某一方法的所有调用的数据,在“方法调用”视图中,右键单击,然后单击显示调用表以打开“方法调用表”视图。
  4. 要检查 UML2 时序图格式的相同数据(如果使用的是“执行时间分析”概要分析类型,可以使用此格式),右键单击已收集的数据的“执行时间分析”概要分析资源,然后单击打开方式,接着单击您要分析的交互类型的 UML2 视图。
反馈
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.