Параллельное программирование в стандарте MPI. Баканов В.М - 22 стр.

UptoLike

Составители: 

- 22 -
запуск на исполнениенабором имени исполняемого модуля
mm_ser
(по-
следовательная программа выполняется на управляющей машине)
.
Cоздание выполняемого файла для параллельного исполнения (компиля-
ция и редактирование связей C- и Fortran-файлов
program.c
и
program.f
соот-
ветственно) осуществляется пользователем командой (исполняемый файл
получит название
program
без расширения):
mpicc -o program program.c
mpif77 -o program program.f
Запуск программы на параллельное выполнение осуществляется с помо-
щью пакетного файла (скрипта)
mpirun
следующим образом:
mpirun –np N [mpi_args] program [command_line_args …]
где
–np N
обязательный ключ, причем параллельное приложение будет
образовано N задачами-копиями, загруженного из программного
файла
program_file (
экземпляры задачи получают номера от 0 до
N-1)
,
mpi_args
– (необязательные) аргументы MPI-системы (например,
-q Q
, где
Q
очередь, в которую будет поставлена задача;
-p P
, где
P
приоритет задачи в очереди;
-maxtime T
, где
T
максимальное время выполнения задачи, ми-
нут),
command_line_args … -
(необязательные) аргументы командной строки, пе-
редающиеся каждому экземпляру задачи.
Пример (на 7 вычислительных узлах запускается программа из файла
my_program
с параметрами среды MPI по умолчанию):
mpirun –np 7 my_program
Заметим, что при запуске задачи на N вычислительных узлах львиную до-
ля вычислительной работы обычно выполняют N-1 рабочих SLAVE-узлов;
один управляющий (MASTER)-узел координирует работу остальных (подго-
тавливает и рассылает SLAVE-узлам данные для расчета, собирает данные и
осуществляет их дополнительную обработку).
На каждом узле в данный момент исполняется единственная задача (про-
цесс); в
случае недоступности требуемого количества узлов (выключены со-
ответствующие ПЭВМ, не загружен Linux или узлы в данный момент заняты
сторонними задачами) задание ставится в очередь до момента освобождения
нужного количества узлов.
При работе в Linux могут возникнуть проблемы, связанные с некорректно-
стью прав доступа к файлам и каталогам. Файлы и
каталоги в UNIX-
подобных операционных системах обладают набором атрибутов, среди кото-
                                     - 22 -

  запуск на исполнение – набором имени исполняемого модуля mm_ser (по-
следовательная программа выполняется на управляющей машине).
  Cоздание выполняемого файла для параллельного исполнения (компиля-
ция и редактирование связей C- и Fortran-файлов program.c и program.f соот-
ветственно) осуществляется пользователем командой (исполняемый файл
получит название program без расширения):

  mpicc -o program program.c

  mpif77 -o program program.f

  Запуск программы на параллельное выполнение осуществляется с помо-
щью пакетного файла (скрипта) mpirun следующим образом:

  mpirun –np N [mpi_args] program [command_line_args …]

  где –np N – обязательный ключ, причем параллельное приложение будет
             образовано N задачами-копиями, загруженного из программного
             файла program_file (экземпляры задачи получают номера от 0 до
             N-1),
  mpi_args – (необязательные) аргументы MPI-системы (например,
             -q Q, где Q – очередь, в которую будет поставлена задача;
             -p P, где P – приоритет задачи в очереди;
             -maxtime T, где T – максимальное время выполнения задачи, ми-
                                нут),
  command_line_args … - (необязательные) аргументы командной строки, пе-
             редающиеся каждому экземпляру задачи.

  Пример (на 7 вычислительных узлах запускается программа из файла
my_program с параметрами среды MPI по умолчанию):

  mpirun –np 7 my_program

  Заметим, что при запуске задачи на N вычислительных узлах львиную до-
ля вычислительной работы обычно выполняют N-1 рабочих SLAVE-узлов;
один управляющий (MASTER)-узел координирует работу остальных (подго-
тавливает и рассылает SLAVE-узлам данные для расчета, собирает данные и
осуществляет их дополнительную обработку).
  На каждом узле в данный момент исполняется единственная задача (про-
цесс); в случае недоступности требуемого количества узлов (выключены со-
ответствующие ПЭВМ, не загружен Linux или узлы в данный момент заняты
сторонними задачами) задание ставится в очередь до момента освобождения
нужного количества узлов.
  При работе в Linux могут возникнуть проблемы, связанные с некорректно-
стью прав доступа к файлам и каталогам. Файлы и каталоги в UNIX-
подобных операционных системах обладают набором атрибутов, среди кото-