next up previous contents
Next: Использование mpirun для поддержки Up: mpirun и Globus Previous: mpirun и Globus   Contents

Использование mpirun для создания скрипта RSL для Вас

Вы можете использовать этот метод, если Вы хотите запустить отдельный исполняемый файл, который охватывает множество из нескольких двоично-совместимых машин, разделяющих единую файловую систему (т.е., они все имеют доступ к исполняемому файлу).

Использование mpirun для создания скрипта RSL для Вас требует наличия файла machines. Команда mpirun определяет, какой из файлов machines будет использоваться, следующим образом:

  1. Если определен аргумент -machinefile <имя файла machines> для mpirun, именно он и используется, иначе
  2. mpirun ищет файл `machines' в каталоге, в котором Вы ввели mpirun, и наконец
  3. он проверяет `/usr/local/mpich/bin/machines', где `/usr/local/mpich' является каталогом инсталляции mpich.
Если файл machines не найден ни в одном из этих мест, mpirun завершается с ошибкой.

Файл machines используется для указания компьютеров, на которых Вы можете пожелать запустить свое приложение. Компьютеры перечисляются указанием ``сервиса'' Globus на данной машине. Для большинства приложений используется сервис по умолчанию, требующий только указания полного доменного имени. Проконсультируйтесь с Вашим администратором Globus или веб-сайтом Globus www.globus.org для дополнительной информации относительно специальных сервисов Globus. Например, рассмотрим следующую пару двоично-совместимых машин $\lbrace$m1,m2$\rbrace$.utech.edu, имеющих доступ к единой файловой системе. Здесь приведен файл machines, использующий сервисы Globus по умолчанию.

``m1.utech.edu'' 10
``m2.utech.edu'' 5
Число, появляющееся на конце каждой строки необязательно (по умолчанию 1). Оно определяет максимальное число узлов, которые могут быть созданы в одной подзадаче RSL на каждой машине. mpirun использует определение -np для ``обхода'' файла machines. Например, используя файл, указанный выше, mpirun -np 8 создает RSL с одной подзадачей с 8-ю узлами на m1.utech.edu, в то время, как mpirun -np 12 создает две подзадачи, где первая имеет 10 узлов на m1.utech.edu, а вторая имеет 2 узла на m2.utech.edu, и наконец, mpirun -np 17 создает три подзадачи с 10 узлами на m1.utech.edu, 5 узлами на m2.utech.edu, и заканчивая третьей подзадачей с 2 узлами снова на m1.utech.edu. Заметьте, что меж-подзадачные сообщения всегда передаются через TCP, даже если две отдельные подзадачи находятся на той же машине.

Subsections

Alex Otwagin 2002-12-16