profmerge and proforder Tools

profmerge Tool

Use the profmerge tool to merge dynamic profile information (.dyn) files. The compiler executes profmerge automatically during the feedback compilation phase when you specify -prof-use (Linux* and Mac OS* X) or /Qprof-use (Windows*).

The command-line usage for profmerge is as follows:

Syntax

profmerge [-prof_dir dir_name]

The tool merges all .dyn files in the current directory, or the directory specified by -prof_dir, and produces a summary file: pgopti.dpi.

Note

The -prof_dir tool option is different than the -prof-dir (Linux and Mac OS X) or /Qprof-dir (Windows) compiler option.

The .dyn files can be merged to a .dpi file by the profmerge tool without recompiling the application.

Since the profmerge tool merges all the .dyn files that exist in the given directory, insure unrelated .dyn files are not present; otherwise, profile information will be based on invalid profile data, which can negatively impact the performance of optimized code.

profmerge Options

The profmerge tool supports the following options:

Tool Option

Description

-help

Lists supported options.

-nologo

Disables version information. This option is supported on Windows* only.

-exclude_funcs functions

Excludes function from the profile. The list items must be separated by a comma (","); you can use a period (".") as a wild card character in function names.

-prof_dir dir

Specifies the directory from which to read .dyn and .dpi files

-prof_dpi file

Specifies the name of the .dpi file.

-prof_file file

Merges information from file matching: dpi_file_and_dyn_tag.

-dump

Displays profile information.

-src_old dir -src_new dir

Changes the directory path stored within the .dpi file.

-a file1.dpi...fileN.dpi

Merges available .dpi files.

-verbose

Instructs the tool to display full information during merge.

Relocating source files using profmerge

The Intel® compiler uses the full path to the source file for each routine to look up the profile summary information associated with that routine. By default, this prevents you from:

To enable the movement of application sources, as well as the sharing of profile summary files, use profmerge -src_old -src_new. For example:

Example: relocation command syntax

profmerge -prof_dir <dir1> -src_old <dir2> -src_new <dir3>

where <dir1> is the full path to dynamic information file (.dpi), <dir2> is the old full path to source files, and <dir3> is the new full path to source files. The example command (above) reads the pgopti.dpi file, in the location specified in <dir1>. For each routine represented in the pgopti.dpi file, whose source path begins with the <dir2> prefix, profmerge replaces that prefix with <dir3>. The pgopti.dpi file is updated with the new source path information.

You can run profmerge more than once on a given pgopti.dpi file. You may need to do this if the source files are located in multiple directories. For example:

Platform

Command Examples

Linux and Mac OS X

profmerge -prof_dir -src_old /src/prog_1 -src_new /src/prog_2

profmerge -prof_dir -src_old /proj_1 -src_new /proj_2

Windows

profmerge -src_old "c:/program files" -src_new "e:/program files"

profmerge -src_old c:/proj/application -src_new d:/app

In the values specified for -src_old and -src_new, uppercase and lowercase characters are treated as identical.  Likewise, forward slash (/) and backward slash (\) characters are treated as identical.

Note

Because the source relocation feature of profmerge modifies the pgopti.dpi file, you may wish to make a backup copy of the file prior to performing the source relocation.

proforder Tool

The proforder tool is used as part of the feedback compilation phase, to improve program performance. Use proforder to generate a function order list for use with the /ORDER linker option. The tools uses the following syntax:

Syntax

proforder [-prof_dir dir] [-o file]

where dir is the directory containing the profile files (.dpi and .spi), and file is the optional name of the function order list file. The default name is proford.txt.

Note

The -prof_dir tool option is different than the -prof-dir (Linux and Mac OS X) or /Qprof-dir (Windows) compiler option.

proforder Options

The proforder tool supports the following options:

Tool Option

Default

Description

-help

 

Lists supported options.

-nologo

 

Disables version information. This option is supported on Windows* only.

-omit_static

 

Instructs the tool to omit static functions from function ordering.

-prof_dir dir

 

Specifies the directory where the .spi and .dpi file reside.

-prof_file string

 

Selects the .dpi and .spi files that include the substring value in the file name matching the values passed as string.

-prof_dpi file

 

Specifies the name of the .dpi file.

-prof_spi file

 

Specifies the name of the .spi file.

-o file

proford.txt

Specifies an alternate name for the output file.