Developer Reference

  • 2020 Update 2
  • 07/15/2020
  • Public Content

Compilation Command Options

-nostrip
Use this option to turn off the debug information stripping while linking the Intel® MPI Library statically.
-config=
<name>
Use this option to source a compiler configuration file. The file should contain the environment settings to be used with the specified compiler.
Use the following naming convention for configuration files:
<installdir>/etc/mpi<compiler>-<name>.conf
where:
  • <compiler>
    =
    {cc,cxx,f77,f90}
    , depending on the language compiled.
  • <name>
    is the name of the underlying compiler with spaces replaced by hyphens; for example, the
    <name>
    value for
    cc -64
    is
    cc--64
    .
-profile=
<profile_name>
Use this option to specify an MPI profiling library.
<profile_name>
is the name of the configuration file (profile) that loads the corresponding profiling library. The profiles are taken from
<installdir>/
etc
.
Intel® MPI Library comes with several predefined profiles for the Intel® Trace Collector:
  • <installdir>/etc/vt.conf
    - regular tracing library
  • <installdir>/etc/vtfs.conf
    - fail-safe tracing library
  • <installdir>/etc/vtim.conf
    - load imbalance tracing library
You can also create your own profile as
<profile_name>
.conf
. You can define the following environment variables in a configuration file:
  • PROFILE_PRELIB
    - libraries (and paths) to load before the Intel® MPI Library
  • PROFILE_POSTLIB
    - libraries to load after the Intel® MPI Library
  • PROFILE_INCPATHS
    - C preprocessor arguments for any include files
For example, create a file
myprof.conf
with the following lines:
PROFILE_PRELIB="-L
<path_to_myprof>
/lib -lmyprof" PROFILE_INCPATHS="-I
<paths_to_myprof>
/include"
Use the
-profile=myprof
option for the relevant compiler wrapper to select this new profile.
-t or -trace
Use the
-t
or
-trace
option to link the resulting executable file against the Intel® Trace Collector library. Using this option has the same effect as the
-profile=vt
option.
You can also use the
I_MPI_TRACE_PROFILE
environment variable to
<profile_name>
to specify another profiling library. For example, set
I_MPI_TRACE_PROFILE
to
vtfs
to link against the fail-safe version of the Intel® Trace Collector.
To use this option, include the installation path of the Intel® Trace Collector in the
VT_ROOT
environment variable. Source the
vars.[c]sh
script provided in the Intel® Trace Analyzer and Collector installation folder.
-trace-imbalance
Use the
-trace-imbalance
option to link the resulting executable file against the load imbalance tracing library of Intel® Trace Collector. Using this option has the same effect as the
-profile=vtim
option.
To use this option, include the installation path of the Intel® Trace Collector in the
VT_ROOT
environment variable. Source the
vars.[c]sh
script provided in the Intel® Trace Analyzer and Collector installation folder.
-check_mpi
Use this option to link the resulting executable file against the Intel® Trace Collector correctness checking library. The default value is
libVTmc.so
.Using this option has the same effect as the
-profile=vtmc
option.
To use this option, include the installation path of the Intel® Trace Collector in the
VT_ROOT
environment variable. Source the
vars.
[c]sh
script provided in the Intel® Trace Analyzer and Collector installation folder.
-ilp64
Use this option to enable partial ILP64 support. All integer arguments of the Intel MPI Library are treated as 64-bit values in this case.
-no_ilp64
Use this option to disable the ILP64 support explicitly. This option must be used in conjunction with
-i8
option of Intel® Fortran Compiler.
If you specify the
-i8
option for the separate compilation with Intel® Fortran Compiler, you still have to use the
i8
or
ilp64
option for linkage.
-dynamic_log
Use this option in combination with the
-t
option to link the Intel® Trace Collector library dynamically. This option does not affect the default linkage method for other libraries.
To run the resulting programs, include
$VT_ROOT/slib
in the
LD_LIBRARY_PATH
environment variable.
-g
Use this option to compile a program in debug mode and link the resulting executable file against the debugging version of the Intel® MPI Library. See
I_MPI_DEBUG
for information on how to use additional debugging features with the
-g
builds.
The optimized library is linked with the
-g
option by default.
Use
vars.{sh|csh} [debug|debug_mt]
at runtime to load a particular
libmpi.so
configuration.
-link_mpi=<
arg
>
Use this option to always link the specified version of the Intel® MPI Library. See the
I_MPI_LINK
environment variable for detailed argument descriptions. This option overrides all other options that select a specific library.
Use
vars.{sh|csh}[debug|debug_mt]
during runtime to load particular
libmpi.so
configuration.
-O
Use this option to enable compiler optimization.
-fast
Use this option to maximize speed across the entire program. This option forces static linkage method for the Intel® MPI Library.
This option is supported only by the
mpiicc
,
mpiicpc
, and
mpiifort
Intel® compiler wrappers.
-echo
Use this option to display everything that the command script does.
-show
Use this option to learn how the underlying compiler is invoked, without actually running it. Use the following command to see the required compiler flags and options:
$
mpiicc -show -c test.c
Use the following command to see the required link flags, options, and libraries:
$ mpiicc -show -o a.out test.o
This option is particularly useful for determining the command line for a complex build procedure that directly uses the underlying compilers.
-show_env
Use this option to see the environment settings in effect when the underlying compiler is invoked.
-{cc,cxx,fc,f77,f90}=
<compiler>
Use this option to select the underlying compiler.
For example, use the following command to select the Intel® C++ Compiler:
$ mpicc -cc=icc -c test.c
Make sure
icc
is in your
PATH
. Alternatively, you can specify the full path to the compiler.
-nofortbind, -nofortran
Use this option to disable
mpiicc
linking with Fortran bindings. Has the same effect as the
I_MPI_FORT_BIND
variable.
-v
Use this option to print the compiler wrapper script version and its underlying compiler version.
-norpath
Use this option to disable rpath for the compiler wrapper for the Intel® MPI Library.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804