Параллельные вычисления. Баканов В.М. - 104 стр.

UptoLike

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

- 104 -
Виртуальной машиной (ВМ) называют совокупность узлов, на которых
исполняется параллельная программа; функционирование ВМ достигается
функционированием на каждом узле процесса - демона PVM. Консоль PVM
специальная программа, позволяющая управлять виртуальной машиной.
Имеется возможность программным путем изменять (активизируя ивыклю-
чаяузлы) состав ВМ, стартовать и включать в состав ветвей параллельных
программ процессы (т.е
. динамически порождать ветви параллельной про-
граммы) или отсоединять их от ВМ. Любой PVM-процесс может информиро-
вать другой ждущий от него сообщений процесс сигналом о возникновении
ошибки, этот сигнал является основой механизма избежания зависания или
аварийного завершения. Программная реализация посылки сообщений про-
ста, по умолчанию сообщения буферизуемы; вероятность дедлока минималь-
на.
Как и в MPI, кроме обменовточка-точкаимеются широковещательные и
сообщения редукции.
PVM изначально проектировалась разработчиками как система для задач с
крупным зерном параллелизма (требования к эффективности коммуникаций
не столь высокив период разработки PVM применялись 10 Mbit Ethernet-
сети); популярность PVM до сих пор высока (основные производители су-
перкомпьютеров снабжают свои изделия и MPI и PVM).
Системой параллельного программирования на основе передачи сообще-
ний является система Linda (
http://cs.yale.edu
), разработанная в середине 80-х
г.г. в США. Идея Linda основана на простых положениях:
a) параллельная программа представлена множеством процессов, каждый
из которых выполняется подобно обычной последовательной програм-
ме,
б) все процессы имеют доступ к общей памяти, причем единицей хранения
данных является кортеж (в этом смысле общая память суть простран-
ство кортежей),
в) всем процессам доступны следующие операции с пространством корте-
жей: поместить кортеж (можно поместить имеющийся кортеж, после
чего в пространстве кортежей окажется два кортежа с одинаковым име-
нем), забрать (после этого кортеж становится недоступным остальным
процессам) и скопировать,
г) процессы не взаимодействуют друг с другом явно, а только через
про-
странство кортежей.
Т.о. в отличие от MPI (где допустим прямой обмен данными любого про-
цесса с любым), в Linda обмены осуществляются фактически через некий
карман’ (‘пространство кортежей’, причем вследствие возможности при по-
иске кортежа использовать метод совпадения значения отдельных его полей
                                     - 104 -


   Виртуальной машиной (ВМ) называют совокупность узлов, на которых
исполняется параллельная программа; функционирование ВМ достигается
функционированием на каждом узле процесса - демона PVM. Консоль PVM –
специальная программа, позволяющая управлять виртуальной машиной.
Имеется возможность программным путем изменять (активизируя и ‘выклю-
чая’ узлы) состав ВМ, стартовать и включать в состав ветвей параллельных
программ процессы (т.е. динамически порождать ветви параллельной про-
граммы) или отсоединять их от ВМ. Любой PVM-процесс может информиро-
вать другой ждущий от него сообщений процесс сигналом о возникновении
ошибки, этот сигнал является основой механизма избежания зависания или
аварийного завершения. Программная реализация посылки сообщений про-
ста, по умолчанию сообщения буферизуемы; вероятность дедлока минималь-
на. Как и в MPI, кроме обменов ‘точка-точка’ имеются широковещательные и
сообщения редукции.
   PVM изначально проектировалась разработчиками как система для задач с
крупным зерном параллелизма (требования к эффективности коммуникаций
не столь высоки – в период разработки PVM применялись 10 Mbit Ethernet-
сети); популярность PVM до сих пор высока (основные производители су-
перкомпьютеров снабжают свои изделия и MPI и PVM).
   Системой параллельного программирования на основе передачи сообще-
ний является система Linda (http://cs.yale.edu), разработанная в середине 80-х
г.г. в США. Идея Linda основана на простых положениях:

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

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