JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.3:性能分析器     Oracle Solaris Studio 12.3 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

1.  性能分析器概述

2.  性能数据

3.  收集性能数据

4.  性能分析器工具

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

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

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

工具如何查找源代码

带注释的源代码

性能分析器"源"标签布局

标识初始源代码行

"源"标签中的索引行

编译器注释

通用子表达式删除

循环优化

函数内联

并行化

带注释的源代码中的特殊行

源代码行度量

解释源代码行度量

度量格式

带注释的反汇编代码

解释带注释的反汇编代码

指令发送分组

指令发送延迟

硬件计数器溢出的归属

"源"、"反汇编"和 `PC` 标签中的特殊行

外联函数

编译器生成的主体函数

动态编译的函数

Java 本机函数

克隆函数

静态函数

非独占度量

分支目标

存储和装入指令的注释

在不运行实验的情况下查看源代码/反汇编代码

-func

-{source,src} item tag

-{disasm,dis} item tag

-{cc,scc,dcc} com-spec

-outfile filename

-V

8.  操作实验

9.  内核分析

索引

工具如何查找源代码

为了显示带注释的源代码和带注释的反汇编代码,性能分析器和 er_print 实用程序对于运行实验的程序所使用的源代码文件和装入对象文件必须具有访问权限。

首先在实验的 archives 目录中查找装入对象文件。如果在该目录中未找到,则将使用与下面所述的源文件和对象文件相同的算法查找这些文件。

在大多数实验中,源文件和对象文件按照完整路径的格式记录。Java 源文件还具有一个软件包名称,其中列出文件的目录结构。如果在记录实验的同一系统上查看实验,则可以使用完整路径找到源文件和装入对象。当实验移到其他计算机或者在其他计算机上查看实验时,这些完整路径可能无法访问。

可以使用两个补充方法来查找源文件和对象文件:路径映射和搜索路径。如果在 archives 子目录中没有找到装入对象文件,可以使用相同的方法来查找这些文件。

可以设置路径映射和搜索路径,帮助工具查找实验中引用的文件。在分析器中,使用 "Set Data Preferences"(设置数据首选项)对话框的 "Pathmaps"(路径映射)标签设置路径映射,并使用 "Search Path"(搜索路径)标签设置搜索路径,如设置数据表示选项中所述。对于 er_print 实用程序,使用 pathmapsetpath 指令,如控制源文件搜索的命令中所述。

首先将应用路径映射,并指定如何将完整文件路径的开头替换为其他路径。例如,如果将文件指定为 /a/b/c/sourcefile,并且 pathmap 指令指定将 /a/ 映射到 /x/y/,则可以在 /x/y/b/c/sourcefile 中找到文件。如果 pathmap 指令将 /a/b/c/ 映射到 /x/,则可以在 /x/sourcefile 中找到文件。

如果通过路径映射找不到文件,则将使用搜索路径。搜索路径提供了一个要为具有指定基名的文件搜索的目录列表,在上面的示例中,指定的基名为 sourcefile。可以使用 setpath 命令设置搜索路径,并使用 addpath 命令向搜索路径附加一个目录。对于 Java 文件,将尝试软件包名称,然后再尝试基名。

使用搜索路径中的每个目录来构造尝试搜索的完整路径。对于 Java 源文件,将构造两个完整路径,一个用于基名,另一个用于软件包名称。工具会将路径映射应用于每个完整路径,如果没有映射路径指向文件,则将尝试下一个搜索路径目录。

如果在搜索路径中没有找到文件,并且没有映射前缀与原始完整路径匹配,则将尝试原始完整路径。如果有任何路径映射前缀与原始完整路径匹配,但没有找到文件,则不会尝试原始完整路径。

请注意,缺省搜索路径包含当前目录和实验目录,因此一个使源文件可访问的方法是将源文件复制到这些位置之一,或者在这些位置中放置指向源文件当前位置的符号链接。