next up previous contents
Next: Интерфейс менеджера процессов Up: Модель процессов MPI-2 Previous: Запуск процессов   Contents

Среда выполнения

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

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

Сложное взаимодействие приложения MPI с его средой выполнения должно выполняться через специфичный для среды программный интерфейс приложения (API). Примером такого API может быть задача PVM и процедуры управления машиной pvm_addhosts, pvm_config, pvm_tasks и т.д., возможно модифицированные, чтобы возвращать пару MPI (группа, ранг), если это возможно. Condor или PSB API может быть еще одним примером.

На некотором низком уровне, очевидно, MPI должен уметь взаимодействовать с системой выполнения, но взаимодействие не заметно на уровне приложения, и детали взаимодействия не определены в стандарте MPI.

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

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

Взаимодействие между MPI и средой выполнения ограничивается следующими областями:



Alex Otwagin 2002-12-10