Параллельные вычисления, используемые в системах, таких как PVM, могут
сводиться к вычислениям согласно трем фундаментальным точкам зрения
в зависимости от способа организации вычислительных задач. С каждой
точки зрения допускаются различные стратегии распределения рабочей
нагрузки (они будут рассмотрены позже, в этом разделе). Первая и наиболее
общая модель для приложений PVM может быть определена как ``беспорядочные''
вычисления: группа тесно связанных процессов, в типичных случаях реализующих
один код и производящих вычисления над различными порциями всех данных,
что обычно приводит к периодическим обменам промежуточными результатами.
Эта парадигма может, при желании, быть разделена на категории:
1. Модель ``ведущий-ведомый'' (или ``хост-станция''), в которой
выделяется ``контролирующая'' программа, называемая ведущей, и
ответственная за порождение процессов, инициализацию, сбор и отображение
результатов, и возможно распределение времени для функций. Ведомые
программы при необходимости выполняют непосредственные вычисления;
распределение их рабочей нагрузки выполняется либо ведущей программой
(статически или динамически), либо ими самими.
2. Модель ``только станции'', в которой возможно множество путей
выполнения одной программы, причем один процесс (обычно он инициируется
вручную) берет на себя невычислительную ответственность в дополнение
к собственно вычислениям. Вторая модель поддерживается в PVM под названием
``дерево'' вычислений. Согласно такому сценарию, процессы порождаются
(обычно динамически по ходу вычислительного процесса) древовидным
способом - таким образом, устанавливая отношения ``предки-потомки''
в форме, похожей на дерево (в противовес беспорядочным вычислениям,
при которых возникают звездообразные отношения). Эта парадигма, несмотря
на то, что менее часто используема, является более естественно подходящей
для приложений, когда общая вычислительная нагрузка ``априори''
неизвестна, например, при реализации алгоритмов ``ветвей и границ'',
``альфа-бета поиска'' и рекурсивных алгоритмов ``разделяй
и властвуй''.
Третью модель, которая определяется как ``гибридная'', можно представить
в виде комбинации древовидной модели и модели беспорядочных вычислений.
По существу, эта парадигма предполагает наличие структур, арбитрирующих
процессы порождения: это значит, что в любой точке при выполнении
приложения структура, контролирующая отношения процессов, может изменить
стратегию арбиртража и тем самым граф.
Отметим, что эта классификация на три категории основана на
базе отношений между процессами, хотя она также часто применима
к коммуникационным топологиям. Однако во всех трех случаях
можно обеспечить взаимодействие и синхронизацию любого процесса
с любым другим. Как следовало ожидать, выбор модели зависит
от приложения и должен производиться для обеспечения наилучшего соответствия
структуре распараллеливаемой программы.