This manual describes the performance analysis tools that are available with the Sun
Open Net Environment (Sun ONE) Studio Compiler Collection product.
- The Collector and Performance Analyzer are a pair of tools that perform statistical profiling of a wide range of performance data and tracing of various system calls, and relate the data to program structure at the function, source line and instruction level.
- prof and gprof are tools that perform statistical profiling of CPU usage and provide execution frequencies at the function level.
- tcov is a tool that provides execution frequencies at the function and source line levels.
This manual is intended for application developers with a working knowledge of Fortran, C, C++, or Java
, the Solaris
operating environment, and UNIX® operating system commands. Some knowledge of performance analysis is helpful but is not required to use the tools.
How This Book Is Organized
Chapter 1 introduces the performance analysis tools, briefly discussing what they do and when to use them.
Chapter 2 is a tutorial that demonstrates how to use the Collector and Performance Analyzer to assess the performance of five example programs.
Chapter 3 describes the data collected by the Collector and how the data is converted into metrics of performance.
Chapter 4 describes how to use the Collector to collect timing data, synchronization delay data, and hardware event data from your program.
Chapter 5 describes the features of the Performance Analyzer graphical user interface. Note: you must have a license to use the Performance Analyzer.
Chapter 6 describes how to use the er_print command line interface to analyze the data collected by the Collector.
Chapter 7 describes the process of converting the data collected by the Collector into performance metrics and how the metrics are related to program structure.
Chapter 8 presents information on the utilities that are provided for manipulating and converting performance experiments and viewing annotated source code and disassembly code without running an experiment.
Appendix A describes the UNIX profiling tools prof, gprof, and tcov. These tools provide timing information and execution frequency statistics.
Typographic Conventions
TABLE P-1 Typeface Conventions
Typeface
|
Meaning
|
Examples
|
AaBbCc123
|
The names of commands, files, and directories; on-screen computer output
|
Edit your .login file.
Use ls -a to list all files.
% You have mail.
|
AaBbCc123
|
What you type, when contrasted with on-screen computer output
|
% su
Password:
|
AaBbCc123
|
Book titles, new words or terms, words to be emphasized
|
Read Chapter 6 in the User's Guide.
These are called class options.
You must be superuser to do this.
|
AaBbCc123
|
Command-line placeholder text; replace with a real name or value
|
To delete a file, type rm filename.
|
TABLE P-2 Code Conventions
Code Symbol
|
Meaning
|
Notation
|
Code Example
|
[ ]
|
Brackets contain arguments that are optional.
|
O[n]
|
O4, O
|
{ }
|
Braces contain a set of choices for a required option.
|
d{y|n}
|
dy
|
|
|
The "pipe" or "bar" symbol separates arguments, only one of which may be chosen.
|
B{dynamic|static}
|
Bstatic
|
:
|
The colon, like the comma, is sometimes used to separate arguments.
|
Rdir[:dir]
|
R/local/libs:/U/a
|
...
|
The ellipsis indicates omission in a series.
|
xinline=f1[,...fn]
|
xinline=alpha,dos
|
Shell Prompts
Shell
|
Prompt
|
C shell
|
machine-name%
|
C shell superuser
|
machine-name#
|
Bourne shell and Korn shell
|
$
|
Superuser for Bourne shell and Korn shell
|
#
|
Accessing Compiler Collection Tools and Man Pages
The compiler collection components and man pages are not installed into the standard /usr/bin/ and /usr/share/man directories. To access the compilers and tools, you must have the compiler collection component directory in your PATH environment variable. To access the man pages, you must have the compiler collection man page directory in your MANPATH environment variable.
For more information about the PATH variable, see the csh(1), sh(1), and ksh(1) man pages. For more information about the MANPATH variable, see the man(1) man page. For more information about setting your PATH variable and MANPATH variables to access this release, see the installation guide or your system administrator.
Note - The information in this section assumes that your Sun ONE Studio Compiler Collection components are installed in the /opt directory. If your software is not installed in the /opt directory, ask your system administrator for the equivalent path on your system.
|
Accessing the Compilers and Tools
Use the steps below to determine whether you need to change your PATH variable to access the compilers and tools.
To Determine Whether You Need to Set Your PATH Environment Variable
|
1. Display the current value of the PATH variable by typing the following at a command prompt.
2. Review the output to find a string of paths that contain /opt/SUNWspro/bin/.
If you find the path, your PATH variable is already set to access the compilers and tools. If you do not find the path, set your PATH environment variable by following the instructions in the next procedure.
To Set Your PATH Environment Variable to Enable Access to the Compilers and Tools
|
1. If you are using the C shell, edit your home .cshrc file. If you are using the Bourne shell or Korn shell, edit your home .profile file.
2. Add the following to your PATH environment variable.
/opt/SUNWspro/bin
Accessing the Man Pages
Use the following steps to determine whether you need to change your MANPATH variable to access the man pages.
To Determine Whether You Need to Set Your MANPATH Environment Variable
|
1. Request the dbx man page by typing the following at a command prompt.
2. Review the output, if any.
If the dbx(1) man page cannot be found or if the man page displayed is not for the current version of the software installed, follow the instructions in the next procedure for setting your MANPATH environment variable.
To Set Your MANPATH Environment Variable to Enable Access to the Man Pages
|
1. If you are using the C shell, edit your home .cshrc file. If you are using the Bourne shell or Korn shell, edit your home .profile file.
2. Add the following to your MANPATH environment variable.
/opt/SUNWspro/man
Accessing Compiler Collection Documentation
You can access the documentation at the following locations:
- The documentation is available from the documentation index that is installed with the software on your local system or network at file:/opt/SUNWspro/docs/index.html.
If your software is not installed in the /opt directory, ask your system administrator for the equivalent path on your system.
- Most manuals are available from the docs.sun.comsm web site. The following titles are available through your installed software only:
- Standard C++ Library Class Reference
- Standard C++ Library User's Guide
- Tools.h++ Class Library Reference
- Tools.h++ User's Guide
- The release notes are available from the docs.sun.com web site.
The docs.sun.com web site (http://docs.sun.com) enables you to read, print, and buy Sun Microsystems manuals through the Internet. If you cannot find a manual, see the documentation index that is installed with the software on your local system or network.
Note - Sun is not responsible for the availability of third-party web sites mentioned in this document and does not endorse and is not responsible or liable for any content, advertising, products, or other materials on or available from such sites or resources. Sun will not be responsible or liable for any damage or loss caused or alleged to be caused by or in connection with use of or reliance on any such content, goods, or services available on or through any such sites or resources.
|
Documentation in Accessible Formats
The documentation is provided in accessible formats that are readable by assistive technologies for users with disabilities. You can find accessible versions of documentation as described in the following table. If your software is not installed in the /opt directory, ask your system administrator for the equivalent path on your system.
Type of Documentation
|
Format and Location of Accessible Version
|
Manuals (except third-party manuals)
|
HTML at http://docs.sun.com
|
Third-party manuals:
- Standard C++ Library Class Reference
- Standard C++ Library User's Guide
- Tools.h++ Class Library Reference
- Tools.h++ User's Guide
|
HTML in the installed software through the documentation index at file:/opt/SUNWspro/docs/index.html
|
Readmes and man pages
|
HTML in the installed software through the documentation index at file:/opt/SUNWspro/docs/index.html
|
Release notes
|
HTML at http://docs.sun.com
|
Related Compiler Collection Documentation
The following table describes related documentation that is available at file:/opt/SUNWspro/docs/index.html and http://docs.sun.com. If your software is not installed in the /opt directory, ask your system administrator for the equivalent path on your system.
Document Title
|
Description
|
OpenMP API User's Guide
|
Information on compiler directives used to parallelize programs.
|
Fortran Programming Guide
|
Discusses programming techniques, including parallelization, optimization, creation of shared libraries.
|
Debugging a Program With dbx
|
Reference manual for use of the debugger. Provides information on attaching and detaching to Solaris processes, and executing programs in a controlled environment.
|
Language user's guides
|
Describe compilation and compiler options.
|
Accessing Related Solaris Documentation
The following table describes related documentation that is available through the docs.sun.com web site.
Document Collection
|
Document Title
|
Description
|
Solaris Reference Manual Collection
|
See the titles of man page sections.
|
Provides information about the Solaris operating environment.
|
Solaris Software Developer Collection
|
Linker and Libraries Guide
|
Describes the operations of the Solaris link-editor and runtime linker.
|
Solaris Software Developer Collection
|
Multithreaded Programming Guide
|
Covers the POSIX and Solaris threads APIs, programming with synchronization objects, compiling multithreaded programs, and finding tools for multithreaded programs.
|
Solaris Software Developer Collection
|
SPARC Assembly Language Reference Manual
|
Describes the assembly language for SPARC® processors.
|
Solaris 9 Update Collection
|
Solaris Tunable Parameters Reference Manual
|
Provides reference information on Solaris tunable parameters.
|
Resources for Developers
Visit http://www.sun.com/developers/studio and click the Compiler Collection link to find these frequently updated resources:
- Articles on programming techniques and best practices
- A knowledge base of short programming tips
- Documentation of compiler collection components, as well as corrections to the documentation that is installed with your software
- Information on support levels
- User forums
- Downloadable code samples
- New technology previews
You can find additional resources for developers at http://www.sun.com/developers/.
Contacting Sun Technical Support
If you have technical questions about this product that are not answered in this document, go to:
http://www.sun.com/service/contacting
Sun Welcomes Your Comments
Sun is interested in improving its documentation and welcomes your comments and suggestions. Email your comments to Sun at this address:
docfeedback@sun.com
Please include the part number (817-0922-10) of your document in the subject line of your email.
Program Performance Analysis Tools
| 817-0922-10
|   
|
Copyright © 2003, Sun Microsystems, Inc. All rights reserved.