Go to main content
Oracle Developer Studio 12.5 Man Pages

Exit Print View

Updated: June 2017
 
 

spot_diff(1)

Name

spot_diff - compare the output of two or more spot runs and write results to an HTML file to be viewed in a browser

Synopsis

spot_diff [-a] [-c] [-d spot_dir...] [-e experiment_dir...] [-f] [-h]
     [-o output_file] [-q] [-r] [-s] [-t diff_highlight_threshold] [-V]                

Description

The spot_diff command reads the output from user-selected spot experiments and creates an HTML document that lists and compares important metrics for each experiment in dynamically sortable tables. Differences exceeding set thresholds are highlighted to bring attention to possible performance-related problems. The following sections of a spot_diff report may appear depending on a system's installed software, a microprocessor's debug features, and privileges of the user that ran the spot experiments:

Key Experiment Metrics

This table includes elapsed/user/system time, instruction count, IPC, bandwidth data (if available), memory use and machine name.

Top Stalls

Generic stall information from ripc typically includes the derived metrics "D-Cache","E-Cache", "FPU use", "IU use", "Instruction Issue", "RAW Miss" and "Store Queue".

BIT Instruction Counts

If instruction frequency data was gathered by spot, a table of top opcode counts is printed.

Flags report

This table lists compilation flags used with each compiler (e.g. cc, CC, f90). Flags that were not used in every invocation of a particular compiler appear highlighted in bold red text.

Traps

Top OS traps that show large variance between experiments are listed.

Time Spent in Top Functions

The functions with highest exclusive user time in each selected experiment appear in this table in alphanumeric order.

Options

If invoked with no arguments, all valid spot experiments in the current directory will be compared and output will be written to the file ./spot_diff.html.

The following options are supported:

-a

The last column in the Key Metrics and Function Profiles tables will be an average of the values in each row.

-c

Generate spot_diff.csv spreadsheet in current directory in addition to the HTML output. The file name may be changed with the –o flag.

-d spot_dir

Every valid spot experiment in the specified directory will be compared. Multiple –d flags are allowed. Default is the current directory.

-e experiment_dir

Specifies an experiment's directory name to include in the spot_diff comparison. Multiple –e flags are allowed and can be used with or without –d.

-f

Fast run (flags and traps reports are not generated).

-h

Print help information.

-o output_file

Default is spot_diff.[html|csv] in current directory. The proper extension (.html or .csv) will be added automatically. Absolute paths can be given to change the location of the output.

-q

Quiet run (STDOUT messages suppressed).

–r

Use relative (that is, non-full-path) links in HTML output.

-s

Snip (as opposed to wrap) long names in the HTML report to fit in narrow columns. For example, abcdefghijk becomes abc..hijk as opposed to the default abcdefghi<break>jk.

–t diff_highlight_threshold

Set diff highlight threshold (default 05, that is, 5%). Do not provide any table cell highlighting if max/min values are less than the threshold.

-V

Print version information.

Examples

Consider the following directory structure:

/tmp/d1/exp1
/tmp/d1/exp2
/tmp/d2/exp1

The following three invocations compare all experiments in /tmp/d1:

1) cd /tmp/d1; spot_diff
2) spot_diff -d /tmp/d1
3) spot_diff -e /tmp/d1/exp1 -e /tmp/d1/exp2

The following two invocations compare all three experiments in /tmp:

1) spot_diff -d /tmp/d1 -e /tmp/d2/exp1
2) spot_diff -e /tmp/d1/exp1 -e /tmp/d1/exp2 -e /tmp/d2/exp1

The only invocation that compares just the experiments /tmp/d1/exp1 and /tmp/d2/exp1 is:

spot_diff -e /tmp/d1/exp1 -e /tmp/d2/exp1

See Also

analyzer (1) , collect (1) , er_archive (1) , er_cp (1) , er_export (1) , er_html (1) , er_html_cols (1) , er_html_columnsD (1) , er_html_columnsI (1) , er_mv (1) , er_print (1) , er_rm (1) , er_src (1) , spot (1) , spot_cmds (1) , spot_cmds_timing (1)

Oracle Developer Studio 12.5: Performance Analyzer