Using mpitune Utility

mpitune

Use the mpitune utility to find optimal settings for the Intel® MPI Library relevant to your cluster configuration or your application.

Syntax

mpitune [ -a \"<application command line>\" ] [ -of <file-name> ] \

[ -t \"<test_cmd_line>\" ] [-cm ] [ -d ] [ -D] \

[ -dl [d1[,d2...[,dN]]] ] [ -fl [f1[,f2…[,fN]]] ] [ -er ] \

[ -hf <hostsfile> ] [ -h ] [ -hr {min:max|min:|:max} ] \

[ -i <count> ] [ -mr {min:max|min:|:max}] [ -od <outputdir> ] \

[ -odr <outputdir> ] [ -r <rshcmd>] [ -pr {min:max|min:|:max}] \

[ -sf [file-path] ] [ -ss ] [ -s ] [ -td <dir-path> ] \

[ -tl <minutes> ] [ -mh ] [ -os <opt1,...,optN> ] \

[ -oe <opt1,...,optN> ] [ -V ] [ -vi {percent} | -vix {X factor} ]\

[ - zb ] [ -t ] [ -so ] [ -ar \"reg-expr\" ] [ -trf <appoutfile> ]\

[ -m {base|optimized} ] [ -avd {min|max} ] [ -pm {mpd|hydra} ] \

[ -co ] [ -sd ] [ -soc ]

or

mpitune [ --application \"<app_cmd _ line>\" ] [ --output-file <file-name> ]\

[ --test \"<test_cmd_line>\" ] [ --cluster-mode ] [ --debug ] \

[ --distinct ] [ --device-list [d1[,d2,… [,dN]]] ] \

[ --fabric-list [f1[,f2...[,fN]]] ] [ --existing-ring ] \

[ --host-file <hostsfile> ] [ --help ] \

[ --host-range {min:max|min:|:max} ] [ --iterations <count> ] \

[ --message-range {min:max|min:|:max} ] \

[ --output-directory <outputdir> ] \

[ --output-directory-results <outputdir> ] [ --rsh <rshcmd> ] \

[ --ppn-range {min:max|min:|:max} |
--perhost-range {min:max|min:|:max} ] \

[ --session-file [file-path] ] [ --show-session ] [ --silent ] \

[--temp-directory <dir-path> ] [ --time-limit <minutes> ] \

[ --master-host ] [ --options-set <opt1,...,optN> ] \

[ --options-exclude <opt1,...,optN> ] [ --version ] \

[ --valuable-improvement | --valuable-improvement-x {X factor} ]\

[ --zero-based ] [ --trace] [ --scheduler-only ] \

[ --application-regexp \"reg-expr\" ] \

[ --test-regexp-file <appoutfile> ] [ --model {base|optimized} ] \

[ --application-value-direction {min|max} ] \

[ --process-manager {mpd|hydra} ] [ -co ] [ -sd ] [ -soc ]

Arguments

-a \"<app_ cmd_line>\"|

--application \"<app_cmd_line>\"

Switch on the application-specific mode. Quote the full command line as shown, including the backslashes.

-of <file-name> |

--output-file <file-name>

Specify the name of the application configuration file to be generated in the application-specific mode. By default, use the file name $PWD/app.conf.

-t \"<test_cmd_line>\" |

--test \"<test_cmd_line>\"

Replace the default Intel® MPI Benchmarks by the indicated benchmarking program in the cluster-specific mode. Quote the full command line as shown including the backslashes.

-cm {exclusive|full} | --cluster-mode {exclusive|full}  

Set the cluster usage mode

  • full - maximum number of tasks are executed. This is the default mode.

  • exclusive - only one task is executed on the cluster at a time.

-d | --debug

Print out the debug information.

-D | --distinct

Tune all options separately from each other. This argument is applicable only for the cluster-specific mode.

-dl [d1[,d2...[,dN]]] |  

--device-list [d1[,d2,… [,dN]]]

Select the device(s) you want to tune. Any previously set fabrics are ignored.. By default, use all devices listed in the <installdir>/<arch>/etc/devices.xml file.

-fl [f1[,f2...[,fN]]] |

--fabric-list [f1[,f2…[,fN]]]

Select the fabric(s) you want to tune. Any previously set devices are ignored. By default, use all fabrics listed in the <installdir>/<arch>/etc/fabrics.xml file.

-er | --existing-ring

Use an existing MPD ring. By default, a new MPD ring is created. This argument is applicable only if I_MPI_PROCESS_MANAGER is set to mpd.

-hf <hostsfile> |

--host-file <hostsfile>

Specify an alternative host file name. By default, use the $PWD/mpd.hosts.

-h | --help

Display the help message.

-hr {min:max|min:|:max} |

--host-range {min:max|min:|:max}

Set the range of hosts used for testing. The default minimum value is 1. The default maximum value is the number of hosts defined by the mpd.hosts or the existing MPD ring. The min: or :max format uses the default values as appropriate.

-i <count> |

--iterations <count>

Define how many times to run each tuning step. Higher iteration counts increase the tuning time, but may also increase the accuracy of the results. The default value is 3.

-mr {min:max|min:|:max} |

--message-range {min:max|min:|:max}

Set the message size range. The default minimum value is 0. The default maximum value is 4194304 (4mb). By default, the values are given in bytes. They can also be given in the following format: 16kb, 8mb or 2gb. The min: or :max format uses the default values as appropriate.

-od <outputdir> |

--output-directory <outputdir>

Specify the directory name for all output files: log-files, session-files, local host-files and report-files. By default, use the current directory. This directory should be accessible from all hosts.

-odr <outputdir> |

--output-directory-results <outputdir>

Specify the directory name for the resulting configuration files. By default, use the current directory in the application-specific mode and the <installdir>/<arch>/etc in the cluster-specific mode. If <installdir>/<arch>/etc is unavailable, $PWD is used as the default value in the cluster-specific mode.

-r <rshcmd> | --rsh <rshcmd>

Specify the remote shell used to start daemons (as applicable) and jobs. The default value is ssh.

-pr {min:max|min:|:max} |

--ppn-range {min:max|min:|:max} |

--perhost-range {min:max|min:|:max}

Set the maximum number of processes per host. The default minimum value is 1. The default maximum value is the number of cores of the processor. The min: or :max format uses the default values as appropriate.

-sf [file-path] |

--session-file [file-path]

Continue the tuning process starting from the state saved in the file-path session file.

-ss |

--show-session

Show information about the session file and exit. This option works only jointly with the -sf option.

-s | --silent

Suppress all diagnostics.

-td <dir-path> |

--temp-directory <dir-path>

Specify a directory name for the temporary data. Use $PWD/mpitunertemp by default. This directory should be accessible from all hosts.

-tl <minutes> |

--time-limit <minutes>

Set mpitune execution time limit in minutes. The default value is 0, which means no limitations.

-mh |

--master-host

Dedicate a single host to run the mpitune.

-os <opt1,...,optN>|

--options-set <opt1,...,optN>

Use mpitune to tune the only required options you have set in the option values

-oe <opt1,...,optN>|

--options-exclude <opt1,...,optN>

Exclude the settings of the indicated Intel® MPI Library options from the tuning process.

-V | --version

Print out the version information.

-vi {percent} |>

--valuable-improvement {percent}  

-vix {X factor} |

--valuable-improvement-x {X factor}

Control the threshold for performance improvement. The default threshold is 3%.

-zb | --zero-based

Set zero as the base for all options before tuning. This argument is applicable only for the cluster-specific mode.

-t | --trace

Print out error information such as error codes and tuner trace back.

-so | --scheduler-only

Create the list of tasks to be executed, display the tasks, and terminate execution.

-ar \"reg-expr\" |

--application-regexp \"reg-expr\"

Use reg-expr to determine the performance expectations of the application. This option is applicable only for the application-specific mode. The reg-expr setting should contain only one group of numeric values which is used by mpitune for analysis. Use backslash for symbols when setting the value of this argument in accordance with the operating system requirements.

-trf <appoutfile> |

--test-regexp-file <appoutfile>

Use a test output file to check the correctness of the regular expression. This argument is applicable only for the cluster-specific mode when you use the -ar option.

-m {base|optimized} |

--model {base|optimized}

Specify the search model:

  • Set base to use the old model.

  • Set optimized to use the new faster search model. This is the default value.

-avd {min|max} |

--application-value-direction {min|max}

Specify the direction of the value optimization :

  • Set min to specify that lower is better. For example, use this value when optimizing the wall time.

  • Set max to specify that higher is better. For example, use this value when optimizing the solver ratio.

-pm {mpd|hydra} |

--process-manager {mpd|hydra}

Specify the process manager used to run the benchmarks. The default value is hydra.

-co | --collectives-only

Tune collective operations only.

-sd | --save-defaults

Use mpitune to save the default values of the Intel® MPI Library options.

-soc | --skip-options-check

Specify whether to check the command line options.

Deprecated Options

Deprecated Option

New Option

--outdir

-od | --output-directory

--verbose

-d | --debug

--file

-hf | --host-file

--logs

-lf | --log-file

--app

-a | --application

Description

Use the mpitune utility to create a set of Intel® MPI Library configuration files that contain optimal settings for a particular cluster or application. You can reuse these configuration files in the mpirun job launcher by using the -tune option. If configuration files from previous mpitune sessions exist, mpitune creates a copy of the existing files before starting execution.

The MPI tuner utility operates in two modes: