The Intel® MPI Library includes the mpitune tuning utility, which allows you to automatically adjust Intel MPI Library parameters, such as collective operation algorithms, to your cluster configuration or application. The tuner iteratively launches a benchmarking application with different configurations to measure performance and stores the results of each launch. Based on these results, the tuner generates optimal values for the parameters that are being tuned.
All tuner parameters should be specified in two configuration files, passed to the tuner with the --config-file option. A typical configuration file consists of the main section, specifying generic options, and search space sections for specific library parameters (for example, for specific collective operations). Configuration files differ in mode and dump-file fields only. To comment a line, use the hash symbol #.
You can also specify MPI options to simplify mpitune usage. MPI options are useful for Intel® MPI Benchmarks that have special templates for mpitune located at <install-dir>/etc/tune_cfg. The templates require no changes in configuration files to be made.
For example, to tune the Bcast collective algorithm, use the following option:
$ mpitune -np 2 -ppn 2 -hosts HOST1 -m analyze -c <path-to-Bcast.cfg>
Experienced users can change configuration files to use this option for other applications.
The tuner presents results in a JSON tree view (since the 2019 release), where the comm_id=-1 layer is added automatically for each tree:
{ "coll=Reduce": { "ppn=2": { "comm_size=2": { "comm_id=-1": { "msg_size=243": { "REDUCE=8": {} }, "msg_size=319": { "REDUCE=11": {} }, "msg_size=8192": { "REDUCE=8": {} }, "msg_size=28383": { "REDUCE=9": {} }, "msg_size=-1": { "REDUCE=1": {} } } } } } }
To add the resulting JSON tree to the library, use the I_MPI_TUNING environment variable.
The old output format is only valid for Intel MPI Library 2018 and prior versions:
I_MPI_ADJUST_BCAST=2:0-0;1:1-64;2:65-509;1:510-8832;3:8833-0
Use the resulting variable value with the application launch to achieve performance gain.
For details on mpitune configuration options, refer to the Developer Reference section Command Reference > mpitune.