Intel® MPI Library Developer Reference for Windows* OS

ID 768734
Date 10/31/2024
Public

Compilation Command Options

-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 <install-dir>\opt\mpi\etc.

You can create your own profile as <install-dir>\opt\mpi\etc\<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 <install-dir>\opt\mpi\etc\myprof.conf with the following lines:

SET PROFILE_PRELIB=<path_to_myprof>\lib\myprof.lib
SET 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.

To use this option, include the installation path of the Intel® Trace Collector in the VT_ROOT environment variable. Source the vars. bat script provided in the Intel® Trace Analyzer and Collector installation folder.

NOTE:
Intel Trace Analyzer and Collector 2022.3 is the final version. No further feature improvements or security fixes will be available after this final release. For more information, see the Intel Trace Analyzer and Collector transition notice.

-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.

To use this option, include the installation path of the Intel Trace Collector in the VT_ROOT environment variable. Source the vars. bat 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 Intel Fortran Compiler, you still have to use the ilp64 option for linkage.

-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, such as-Zi.

/Zi, /Z7 or /ZI

Use these options to compile a program in debug mode and link the resulting executable against the debugging version of the Intel MPI Library. See I_MPI_DEBUG for information on how to use additional debugging features with the /Zi, /Z7, /ZI or debug builds.

The /ZI option is only valid for C/C++ compiler.

-O

Use this option to enable compiler optimization.

Setting this option triggers a call to the libirc library. Many of those library routines are more highly optimized for Intel microprocessors than for non-Intel microprocessors.

-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.bat -show test.obj

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}=<compiler>

Use this option to select the underlying compiler.

The table below lists the recommended product default LLVM and IL0 compiler options and commands used to invoke them.

LLVM Compiler Options for Intel® oneAPI
Language/Model Product Name Compiler Driver Compiler Wrapper Command Example
C Intel® oneAPI DPC++/C++ Compiler icx mpiicc -cc=icx > mpicc -cc=icl.exe -c test.c
C++ Intel® oneAPI DPC++/C++ C icpx mpiicpc -cxx=icpx > mpiicpc -cxx=icpx -c test.cpp
SYCL* Intel® oneAPI DPC++/C++ Compiler > icx-cl -fsycl mpiicpc > -cxx=icx -fsycl > mpiicpc -cxx=icpx -fsycl -c test.cpp
Fortran Intel® oneAPI Fortran Compiler ifx mpiifort -fc=ifx > mpiifort -fc=ifx -c test.
NOTE:
Make sure that the wrapper name is in your PATH. Alternatively, you can specify the full path to the compiler.

NOTE: This option works only with the mpiicc.bat and the mpifc.bat commands.

-v

Use this option to print the compiler wrapper script version.

-norpath

Use this option to disable rpath for the compiler wrapper for the Intel® MPI Library.