本主题包含 [时间线] 标签中有关一些异常情况或直观异常情况的信息。
如果您的应用程序使用 SolarisTM 7 操作环境或 Solaris 8 操作环境中的默认线程,则将创建额外线程以执行系统工作。如果应用程序使用的是绑定线程,则为这些线程创建额外的 LWP。收集器不记录额外 LWP 的数据,但 [时间线] 标签中 LWP 的编号包括这些 LWP。
针对每一进程都要记录抽样数据,因此抽样栏中显示的信息包括该进程中所有 LWP 和所有线程花费的时间。如果应用程序以多于机器中存在的 CPU 数的线程运行,则针对用户 CPU 时间,只能着色一小部分抽样。
当由收集器初始化的抽样点被记录时,只有一个线程记录该抽样点。当一个抽样点通过多次调用 API 例程 collector_sample() 进行记录时,执行调用的每个线程都可以记录抽样点。结果可能是许多非常小的抽样,它们表示在这些调用之间所花费的时间。
[时间线] 中的事件标记显示调用栈的彩色编码表示。事件标记的位置由时间戳确定。在少数情况下进行系统时钟同步时,时间戳可能不会精确反映时间,并且时钟分析事件的间隔可能随分析间隔的不同而不同。
如果正在检查多个实验的数据,则在实验之间进行比较时,应该特别小心。实验的时间均按照初始时间戳进行校准,但在相对于此点的任一给定时间,针对每个实验程序可能处于不同的执行位置,即使您使用相同的输入运行该程序。对于此行为可能存在许多可能的原因。其中一个原因就是收集器开销因不同的数据类型而异。
另请参见 | |
---|---|
查找程序中的问题时段 查找 CPU 低效使用阶段 时间线标签 |