Use the profmerge utility to merge the dynamic profile information (.dyn) files. The compiler executes profmerge automatically during the feedback compilation phase when you specify -prof-use (Linux*) or /Qprof-use (Windows*).
The command-line usage for profmerge is as follows
Syntax |
---|
profmerge [/nologo] [-prof_dir dir_name] |
This merges all .dyn files in the current directory or the directory specified by -prof-dir (Linux) or /Qprof-dir (Windows), and produces the summary file pgopti.dpi.
The profmerge utility supports the following options:
Option |
Description |
---|---|
-help |
List supported options. |
-nologo |
Disables version information. |
-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 |
Change the directory path stored within the .dpi. |
-a file1...fileN |
Merges .dpi files. |
Note
The profmerge tool merges all the .dyn files that exist in the given directory. Make sure 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. The .dyn files can be merged to a .dpi file by the profmerge tool without recompiling the application.
Use -prof-file (Linux) or /Qprof-file (Windows) to specify the name of the .dpi file.
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:
Using the profile summary file (.dpi) if you move your application sources.
Sharing the profile summary file with another user who is building identical application sources that are located in a different directory.
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: sample 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 |
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 (Linux) or /src_old (Windows) and -src_new (Linux) or /src_new (Windows), uppercase and lowercase characters are treated as identical. Likewise, forward slash (/) and backward slash (\) characters are treated as identical.
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.
The proforder utility 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. The commands are different than the compiler option: -prof-dir (Linux) or /Qprof_dir (Windows).
The proforder utility supports the following options:
Option |
Description |
---|---|
-help |
Lists supported options. |
-nologo |
Disables version information. |
-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 |
Specifies an alternate name for the output file. |