Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KS_LK_AllInOne.docx
Скачиваний:
175
Добавлен:
23.11.2019
Размер:
28.78 Mб
Скачать
  1. Параллельная виртуальная машина

3 Кластерн ый вычислительн ый комплекс на основе пАраллельной виртуальной машины

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

3.1.1 Общая характеристика

Система разработки и выполнения параллельных программ PVM (Parallel Virtual Machine) является почти такой же распространенной системой, что и MPI, лишь немного уступая ей в популярности. PVM позволяет объединить разнородный набор компьютеров, связанных сетью, в общий вычислительный ресурс, который называют «Параллельной виртуальной машиной». Отсюда и название системы. Компьютеры могут быть многопроцессорными машинами любого типа: суперкомпьютерами, рабочими станциями и т. д., объединенными сетями любого вида (Ethernet, ATM и др.). Как обычно, поддерживаются языки C/C++ и FORTRAN, хотя в настоящее время имеются средства сопряжения библиотек PVM и с другими языками, такими как Perl и Java.

3.1.2 Гетерогенные вычислительные системы

В вычислительных системах и, прежде всего, в кластерах рабочих станций практически всегда приходится встречаться сразу с несколькими видами разнородности (гетерогенности). Система PVM изначально создавалась с ориентацией именно на гетероген­ные системы. Следует заметить, что и MPI поддерживает программирование для гетерогенных вычислительных систем, однако эта поддержка ограничена – она включает только поддержку гетерогенности по форматам хранения данных и в небольшой степени по архитектуре. В ос­нову PVM положена идея виртуальной параллельной вычислительной машины, которая скрывает от программиста реальную неоднородность кластера, пре­доставляя в его распоряжение единый виртуальный многопроцессор­ный вычислительный комплекс. Этот виртуальный комплекс используется для реального выполнения реальных программ. Система берет на себя дос­тавку сообщений, преобразование данных, управление процессами. PVM представляет собой систему передачи сообщений, которая развивалась неза­висимо от стандарта MPI, своим путем. Разработчики системы PVM положили в ее основу следующие принципы:

  • управление конфигурацией виртуального параллельного компьютера должно осуществляться любым пользователем системы. Пользователь может добавлять в конфигурацию необходимое количество физических хостов по выбору, исходя из потребностей задачи, доступности хостов и степени их загрузки. Конфигурация может изменяться "на лету" в процессе работы, что позволяет обеспечить более устойчивую ра­боту программы, поскольку вышедший из строя компьютер может быть без труда исключен из виртуальной машины;

  • "прозрачный" доступ к аппаратуре прикладных программ, для которых виртуальная машина представляет собой набор одинаковых процессор­ных элементов. С другой стороны, при необходимости, конкретные хос­ты могут использоваться для решения специфических задач, если это по­зволяет их архитектура или установленное на них программное обеспе­чение;

  • единицей параллелизма в PVM является задача или подзадача, состояние которой изменяется в процессе работы про­граммы. Задача в определенные промежутки времени может выполнять вычисления, затем переходить к обмену данными и т. д.;

  • использование явной модели обмена сообщениями. Размер сообщения ограничен лишь объемом доступной памяти;

  • поддержка всех типов неоднородности;

  • поддержка симметричных многопроцессорных систем.

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

Основными целями, к которым стремились разработчики PVM, являются устойчивая работа системы, масштабируемость, поддержка любых типов гетерогенности и переносимость. Этих целей удалось достичь. PVM не мо­жет восстановить работу приложения после аппаратного сбоя, но дает про­граммисту возможность написать программу, устойчивую к аппаратным сбоям и системным авариям. Виртуальная машина допускает динамическое изменение конфигурации. Масштабируемость виртуальной машины позво­ляет включать в ее состав сотни хостов и выполнять в ее среде тысячи про­цессов. PVM позволяет соединять вместе компьютеры разных видов. Она работает с минимальной модификацией в любой операционной системе из класса UNIX, а также в системах, построенных на общих принципах, таких как многозадачность и поддержка сетевой работы. Программный интерфейс прост, но имеет достаточную функциональность. Пакет может быть уста­новлен обычным пользователем, не имеющим привилегий суперпользователя.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]