JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Solaris Studio 12.2: Simple Performance Optimization Tool (SPOT) User's Guide
search filter icon
search icon

Document Information

Preface

1.  The Simple Performance Optimization Tool (SPOT)

Introduction

Requirements for Using SPOT

Supported Platforms

Binaries Must Be Prepared Correctly

The Architecture of SPOT

2.  Running SPOT on Your Application

3.  Understanding SPOT Reports

Index

Requirements for Using SPOT

Supported Platforms

SPOT runs on SPARC and x86 platforms. The specific details included in the SPOT reports are platform dependent. Some of the tools that SPOT uses are not available on x86 platforms, so instruction count data, bandwidth data, and trap data are not included when you run SPOT on these platforms.

Binaries Must Be Prepared Correctly

SPOT works on binaries compiled with the Sun Studio 12, Sun Studio 12 Update 1, or Oracle Solaris Studio 12.2 compilers, or the GCC for Sun Systems compilers starting with version 4.2.0, on a SPARC_based or x86–based system running the Solaris 10 5/08 operating system or a later Solaris 10 update.

When using a Sun Studio or Oracle Solaris Studio compiler. you must compile with optimizations by using the -O option or the -xO[n] option. When using a GCC compiler, no particular optimization level is required.

Using the -g option to generate debug information when compiling the binary allows SPOT to attribute time and processor events back to the source code lines that caused them. For C++ programs, the -g option alone (with no optimization level specified) turns off inlining of functions, which can have a significant performance impact. So it is better to use the -g0 (zero) option, which turns on debugging information and does not affect inlining of functions.

A binary compiled as described includes information called annotations that let the tools instrument the application to generate the counts of the number of calls to routines and the number of times each individual instruction is executed.