JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.2:性能分析器
search filter icon
search icon

文档信息

前言

1.  性能分析器概述

2.  性能数据

3.  收集性能数据

编译和链接程序

源代码信息

静态链接

共享对象处理

编译时优化

编译 Java 程序

为数据收集和分析准备程序

使用动态分配的内存

使用系统库

使用信号处理程序

使用 setuidsetgid

数据收集的程序控制

C 和 C++ 接口

Fortran 接口

Java 接口

C、C++、Fortran 和 Java API 函数

动态函数和模块

collector_func_load()

collector_func_unload()

数据收集的限制

基于时钟的分析的限制

时钟分析中的运行时失真和扩大

收集跟踪数据的限制

跟踪过程中的运行时失真和扩大

硬件计数器溢出分析的限制

硬件计数器溢出分析中的运行时失真和扩大

对子孙进程进行数据收集的限制

OpenMP 分析的限制

Java 分析的限制

用 Java 编程语言所编写的应用程序的运行时性能失真和扩大

数据的存储位置

实验名称

移动实验

估计存储要求

收集数据

使用 collect 命令收集数据

数据收集选项

-p option

-h counter_definition_1...[, counter_definition_n]

-s option

-H option

-M option

-m option

-S option

-c option

-I directory

-N library_name

-r option

实验控制选项

-F option

-j option

-J java_argument

-l signal

-t duration

-x

-y signal[ ,r]

输出选项

-o experiment_name

-d directory-name

-g group-name

-A option

-L size

-O file

其他选项

-P process_id

-C comment

-n

-R

-V

-v

使用 collect 实用程序从正在运行的进程中收集数据

使用 collect 实用程序从正在运行的进程中收集数据

使用 dbx collector 子命令收集数据

dbx 运行收集器:

数据收集子命令

profile option

hwprofile option

synctrace option

heaptrace option

tha option

sample option

dbxsample { on | off }

实验控制子命令

disable

enable

pause

resume

sample record name

输出子命令

archive mode

limit value

store option

信息子命令

show

status

在 Solaris 平台上使用 dbx 从正在运行的进程中收集数据

从不受 dbx 控制的正在运行的进程中收集数据

从正在运行的程序中收集跟踪数据

从 MPI 程序收集数据

对 MPI 运行 collect 命令

存储 MPI 实验

从脚本收集数据

collectppgsz 一起使用

4.  性能分析器工具

5.  er_print 命令行性能分析工具

6.  了解性能分析器及其数据

7.  了解带注释的源代码和反汇编数据

8.  处理实验

9.  内核分析

索引

使用 dbx collector 子命令收集数据

本节介绍如何从 dbx 运行收集器,然后介绍可以与 dbx 中的 collector 命令一起使用的每个子命令。

dbx 运行收集器:

  1. 通过键入以下命令将程序装入 dbx 中。
    % dbx program
  2. 使用 collector 命令启用数据收集,选择数据类型并设置任何可选参数。
    (dbx) collector subcommand

    要获取可用 collector 子命令的列表,请键入:

    (dbx) help collector

    必须针对每个子命令都使用一个 collector 命令。

  3. 设置要使用的任何 dbx 选项并运行该程序。

    如果提供的子命令不正确,则会列显一条警告消息并忽略该子命令。下面是 collector 子命令的完整列表。

数据收集子命令

以下子命令可与 dbx 中的 collector 命令一起使用,对收集器收集的数据的类型进行控制。如果实验处于活动状态,则这些子命令将被忽略并显示一条警告。

profile option

控制对基于时钟的分析数据的收集。option 的允许值包括:

hwprofile option

控制对硬件计数器溢出分析数据的收集。如果您尝试在不支持硬件计数器溢出分析的系统中启用它,则 dbx 会返回一条警告消息,而且该命令将被忽略。option 的允许值包括:

synctrace option

控制对同步等待跟踪数据的收集。option 的允许值包括:

heaptrace option

控制对堆跟踪数据的收集。option 的允许值包括:

缺省情况下,收集器不收集堆跟踪数据。

tha option

为线程分析器收集数据争用检测或死锁检测数据。允许的值包括:

有关线程分析器的更多信息,请参见《Oracle Solaris Studio 12.2:线程分析器用户指南》tha.1 手册页。

sample option

控制抽样模式。option 的允许值包括:

缺省情况下,启用抽样间隔 value 为 1 秒的定期抽样。

dbxsample { on | off }

控制dbx 停止目标进程时对样本的记录。关键字的含义如下所示:

缺省情况下,在 dbx 停止目标进程时记录样本。

实验控制子命令

以下子命令可与 dbx 中的 collector 命令一起使用,对收集器收集的实验数据进行控制。如果实验处于活动状态,将忽略这些子命令并显示一条警告。

disable

禁用数据收集功能。如果进程正在运行而且正在收集数据,该子命令将终止实验并禁用数据收集功能。如果进程正在运行而且数据收集功能处于禁用状态,则该子命令将被忽略并显示一条警告。如果没有任何进程在运行,则该子命令将针对后续运行禁用数据收集功能。

enable

启用数据收集功能。如果进程正在运行,但数据收集功能处于禁用状态,则该子命令将启用数据收集功能并启动新的实验。如果进程正在运行,而且数据收集功能处于启用状态,则该子命令将被忽略并显示一条警告。如果没有任何进程在运行,则该子命令将针对后续运行启用数据收集功能。

您可以在任何进程执行期间根据需要启用和禁用数据收集功能任意次数。每次启用数据收集功能时,都会创建一个新实验。

pause

暂停数据收集,但使实验保持打开状态。收集器暂停时不记录样本点。在暂停之前会生成一个样本,在恢复之后会立即生成另一个样本。如果已暂停数据收集功能,则该子命令将被忽略。

resume

发出 pause 之后恢复数据收集。如果正在收集数据,则该子命令将被忽略。

sample record name

记录具有标签 name 的样本包。该标签显示在性能分析器的“事件”标签中。

输出子命令

以下子命令可与 dbx 中的 collector 命令一起使用,对实验的存储选项进行定义。如果实验处于活动状态,将忽略这些子命令并显示一条警告。

archive mode

设置归档实验的模式。mode 的允许值包括:

如果打算将实验移到另一台计算机上,或者从另一台计算机上读取实验,则应当启用对装入对象的复制。如果实验处于活动状态,则该命令将被忽略并显示一条警告。该命令不会将源文件或目标文件复制到实验中。

limit value

所记录的分析数据量限制在 value 兆字节。该限制适用于基于时钟的分析数据量、硬件计数器溢出分析数据量和同步等待跟踪数据量之和,但不适用于样本点。该限制只是近似值,可以被超出。

当达到该限制时,不再记录分析数据,但实验会一直保持打开状态,而且会继续记录样本点。

缺省情况下,记录的数据量是不受限制的。

store option

控制实验的存储位置。如果实验处于活动状态,则该命令将被忽略并显示一条警告。option 的允许值包括:

信息子命令

以下子命令可与 dbx 中的 collector 命令一起使用,从而获取关于收集器设置和实验状态的报告。

show

显示每个收集器控件的当前设置。

status

报告任何打开的实验的状态。