next up previous contents
Next: Модель процессов MPI-2 Up: Создание и управление процессами Previous: Создание и управление процессами   Contents

Введение

MPI-1 предоставляет интерфейс, позволяющий процессам в параллельной программе общаться друг с другом. MPI-1 не только определяет, как создаются процессы, но и как они устанавливают связь. Кроме того, приложение MPI-1 статично; процессы не могут быть добавлены или удалены из приложения после его запуска.

Пользователи MPI просили, чтобы модель MPI-1 была расширена, позволяя создание и управление процессами после запуска приложения MPI. Основной импульс дали успехи исследований по PVM [8], предоставившие богатейший опыт, который иллюстрирует преимущества и потенциальные ловушки контроля ресурсов и управления процессами. Раннее обсуждение возможного подхода к динамическим процессам в MPI представлено в [9].

MPI Forum решил не обращаться к контролю ресурсов в MPI-2, поскольку его члены не могли создать переносимый интерфейс, который подходил бы для широкого спектра существующих и потенциально возможных контроллеров ресурсов и процессов. Контроль ресурсов может охватывать широкий круг возможностей, включая добавление и удаление узлов в параллельной виртуальной машине, резервирование и диспетчеризацию ресурсов, управление частями вычислений на многопроцессорных системах и возврат информации о доступных ресурсах. MPI-2 предполагает, что контроль ресурсов проводится извне - возможно, поставщиком компьютеров в случае тесно связанных систем, или пакетами программного обеспечения третьей стороны, если среда - это кластер рабочих станций.

Причины добавления управления процессами в MPI как технические, так и практические. Технически, важнейшие классы приложений с обменом сообщениями требуют контроля процессов. Они включают в себя фермы задач, последовательные приложения с параллельными модулями и задачи, требующие определения количества и типа запускаемых процессов во время выполнения. С практической стороны, пользователи кластеров рабочих станций, перешедшие с PVM на MPI, возможно привыкли использовать возможности PVM по управлению ресурсами и процессами. Отсутствие этих возможностей - практически камень преткновения для перехода.

Поскольку управление процессами необходимо, все согласны, что добавление его в MPI не должно подвергать риску переносимость или производительность приложений MPI. В частности, Forum определил следующие требования:

Модель управления процессами MPI-2 решает эти вопросы двумя способами. Во-первых, MPI главным образом сохраняет библиотеку коммуникации. Он не управляет параллельной средой, в которой выполняются параллельные программы, хотя он и предлагает минимальный интерфейс между приложением и внешними менеджерами ресурсов и процессов.

Во-вторых, MPI-2 не изменяет концепции коммуникатора. Когда коммуникатор создан, он ведет себя, как определенный в MPI-1. Коммуникатор никогда не изменяется после создания, и всегда создается с использованием определенных коллективных операций.



Alex Otwagin 2002-12-10