Developer Reference


Tuning is very dependent on the specifications of the particular platform.  Intel carefully determines the tuning parameters, and makes them available for autotuning using
and the
family environment variables to find the best settings (see Tuning Environment Variables and I_MPI_TUNING_AUTO Family Environment Variables).
and the
family environment variables support only Intel processors, and cannot be used on other platforms.
The autotuner functionality lets you automatically find the best algorithms for collective operations. The autotuner search space can be modified by the
variable (see I_MPI_ADJUST Family Environment Variables).
The collectives currently available for autotuning are:
MPI_Allreduce, MPI_Bcast, MPI_Barrier, MPI_Reduce, MPI_Gather, MPI_Scatter, MPI_Alltoall, MPI_Allgatherv, MPI_Reduce_scatter, MPI_Reduce_scatter_block, MPI_Scan, MPI_Exscan, MPI_Iallreduce, MPI_Ibcast, MPI_Ibarrier, MPI_Ireduce, MPI_Igather, MPI_Iscatter, MPI_Ialltoall, MPI_Iallgatherv, MPI_Ireduce_scatter, MPI_Ireduce_scatter_block, MPI_Iscan,
To get started with autotuning, follow these steps:
  1. Launch the application with autotuner enabled and specify the dump file, which stores results:
    I_MPI_TUNING_MODE=auto I_MPI_TUNING_BIN_DUMP=<tuning-results.dat>
  2. Launch the application with the tuning results generated at the previous step:
    Or use the
    Hydra option.
  3. If you experience performance issues, see Environment Variables for Autotuning.
For example:
  1. $ export I_MPI_TUNING_MODE=auto $ export I_MPI_TUNING_AUTO_SYNC=1 $ export I_MPI_TUNING_AUTO_ITER_NUM=5 $ export I_MPI_TUNING_BIN_DUMP=./tuning_results.dat $ mpirun -n 128 -ppn 64 IMB-MPI1 allreduce -iter 1000,800 -time 4800
  2. $ export I_MPI_TUNING_BIN=./tuning_results.dat $ mpirun -n 128 -ppn 64 IMB-MPI1 allreduce -iter 1000,800 -time 4800
To tune collectives on a communicator identified with the help of Application Performance Snapshot (APS), execute the following variable at step 1:
I_MPI_TUNING_AUTO_COMM_LIST=comm_id_1, … , comm_id_n

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at