Команда «mpiexec» обычно используется в средах высокопроизводительных вычислений (HPC) для запуска параллельных программ с использованием стандарта интерфейса передачи сообщений (MPI). Обычно он используется для выполнения приложений MPI на нескольких процессорах или узлах кластера. Вот некоторые методы и параметры, которые обычно используются с командой «mpiexec»:
-
Основное использование: основной синтаксис команды «mpiexec» следующий:
mpiexec [options] executable [arguments]
-
Указание количества процессов: вы можете использовать опцию «-n» или «-np», за которой следует целое число, чтобы указать количество запускаемых процессов MPI. Например:
mpiexec -n 4 myprogram
-
Хост-файл: вы можете использовать хост-файл, чтобы указать хосты или машины, на которых должны запускаться процессы MPI. Файл хоста обычно содержит список имен хостов или IP-адресов. Вы можете использовать опцию «-hostfile», чтобы указать путь к хост-файлу. Например:
mpiexec -hostfile myhostfile.txt myprogram
-
Привязка к процессору. Параметр «–bind-to» позволяет указать политику привязки процессов MPI к физическим процессорам. Эта опция может быть полезна для оптимизации производительности, гарантируя, что процессы назначаются конкретным процессорам. Например:
mpiexec --bind-to core myprogram
-
Библиотека связи. Параметр «–mca» позволяет указать пользовательские параметры для базовой реализации MPI или библиотеки связи. Эту опцию можно использовать для настройки поведения процессов MPI или включения определенных функций. Например:
mpiexec --mca btl tcp,self myprogram
-
Обработка ошибок. Параметр «–oversubscribe» позволяет запускать больше процессов MPI, чем количество доступных процессоров. Это может быть полезно, когда количество запрошенных процессов превышает доступные ресурсы. Например:
mpiexec --oversubscribe -n 8 myprogram
-
Профилирование MPI. Параметр «–profile» включает профилирование MPI, которое может предоставить подробную информацию о производительности приложений MPI. Эту опцию можно использовать с такими инструментами, как MPIP или Scalasca. Например:
mpiexec --profile myprogram
-
Планирование заданий. В некоторых средах высокопроизводительных вычислений планировщики заданий используются для управления распределением ресурсов. Команду «mpiexec» можно использовать вместе с командами планировщика заданий для отправки параллельных заданий. Конкретный синтаксис может различаться в зависимости от используемого планировщика заданий.