stringtranslate.com

Параллельная виртуальная машина

Параллельная виртуальная машина ( PVM ) — это программный инструмент для параллельной сетевой работы компьютеров . Он разработан для того, чтобы сеть разнородных машин Unix и/или Windows могла использоваться как единый распределенный параллельный процессор . [2] Таким образом, большие вычислительные задачи могут быть решены более экономически эффективно за счет использования совокупной мощности и памяти многих компьютеров. Программное обеспечение очень портативно; исходный код, доступный бесплатно через netlib , был скомпилирован на всем, от ноутбуков до Crays . [3]

PVM позволяет пользователям использовать имеющееся у них компьютерное оборудование для решения гораздо более масштабных задач с меньшими дополнительными затратами. PVM использовался в качестве образовательного инструмента для обучения параллельному программированию , но также использовался для решения важных практических задач. [3] Он был разработан Университетом Теннесси , Национальной лабораторией Оук-Ридж и Университетом Эмори . Первая версия была написана в ORNL в 1989 году, и после того, как ее переписал Университет Теннесси, версия 2 была выпущена в марте 1991 года. Версия 3 была выпущена в марте 1993 года и поддерживала отказоустойчивость и лучшую переносимость .

PVM был шагом на пути к современным тенденциям в распределенной обработке и сетевых вычислениях , но с середины 1990-х годов был в значительной степени вытеснен гораздо более успешным стандартом MPI для передачи сообщений на параллельных машинах. PVM — это свободное программное обеспечение , выпущенное как под лицензией BSD , так и под лицензией GNU General Public License .

Дизайн

PVM — это программная система, которая позволяет использовать совокупность разнородных компьютеров в качестве согласованного и гибкого параллельного вычислительного ресурса или «параллельной виртуальной машины ».

Отдельные компьютеры могут представлять собой мультипроцессоры с общей или локальной памятью , векторные суперкомпьютеры , специализированные графические движки или скалярные рабочие станции и ПК , которые могут быть соединены между собой различными сетями , такими как Ethernet или FDDI .

PVM состоит из среды выполнения и библиотеки для передачи сообщений , управления задачами и ресурсами, а также уведомления об ошибках. Хотя PVM не заставит автоматически коммерческий программный пакет работать быстрее, он предоставляет мощный набор функций для ручного распараллеливания существующей исходной программы или для написания новых параллельных/распределенных программ.

Программное обеспечение PVM должно быть специально установлено на каждой машине, которая будет использоваться в данной «виртуальной машине». В PVM нет «автоматической» установки исполняемых файловpvm3/lib на удаленные машины, хотя простого копирования каталогов и pvm3/binна другую похожую машину (и установки $PVM_ROOTи $PVM_ARCH) достаточно для запуска программ PVM. Компиляция или сборка программ PVM требует полной установки PVM.

Пользовательские программы, написанные на языках C , C++ или Fortran, могут получать доступ к PVM через предоставленные библиотечные процедуры.

PVM также поддерживает широковещательную рассылку (PVM_bcast), которая отправляет данные всем процессам в группе, и многоадресную рассылку (PVM_mcast), которая отправляет данные определенному списку процессов.

Смотрите также

Ссылки

  1. ^ Примечания к выпуску
  2. ^ Статья основана на материале, взятом из Parallel+Virtual+Machine в Free On-line Dictionary of Computing до 1 ноября 2008 года и включенном в соответствии с условиями «перелицензирования» GFDL версии 1.3 или более поздней.
  3. ^ ab "Домашняя страница параллельной виртуальной машины (PVM)".

Внешние ссылки