Параллельная виртуальная машина кластера кафедры АИС - Администрирование параллельных процессов

Так как в основе кластера АИС лежит параллельная система Beowulf, в качестве основы его вычислительной среды используем коммуникационную библиотеку PVM (Параллельная Виртуальная Машина).

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

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

Главная цель использования PVM - это повышение скорости вычислений за счет их параллельного выполнения. Функционирование PVM основано на механизмах обмена информацией между задачами, выполняемыми в ее среде. В этом отношении наиболее удобно реализовывать PVM в рамках многопроцессорного вычислительного комплекса, выделив виртуальной машине несколько процессоров и общее или индивидуальные (в зависимости от условий) ОЗУ. Использование PVM допустимо как на многопроцессорных компьютерах (SMP) так и на вычислительных комплексах, построенных по кластерной технологии.

При программировании для PVM необходимо произвести адаптацию алгоритма любых вычислений к составу и характеристикам PVM. В процессе программирования возникает необходимость контроля и управления вычислительным процессом и задачами.

Эффективное программирование для PVM начинается с того, что алгоритм вычислений следует адаптировать к составу PVM и к ее характеристикам. Кроме задачи распараллеливания вычислений с необходимостью возникает и задача управления вычислительным процессом, координации действий задач участников этого процесса. Иногда для управления приходится создавать специальную задачу, которая сама не участвуя в вычислениях, обеспечивает согласованную работу остальных задач вычислителей.

При параллельных вычислениях необходимо программировать специальные действия по координации работы задач, такие как процессы запуска задач на процессорах кластера, управление обменом данных между задачами и пр. Также необходимо определить "область деятельности" для каждой задачи.

Способ организации параллельного счета выглядит следующим образом. Сначала запускается одна задача (master), которая в коллективе задач будет играть функции координатора работ. Эта задача производит некоторые подготовительные действия, например инициализация начальных условий, после чего запускает остальные задачи (slaves), которым может соответствовать либо тот же исполняемый файл, либо разные исполняемые файлы. Такой вариант организации параллельных вычислений предпочтительнее при усложнении логики управления вычислительным процессом, а также когда алгоритмы, реализованные в разных задачах, существенно различаются или имеется большой объем операций (например, ввода - вывода), которые обслуживают вычислительный процесс в целом.

Похожие статьи




Параллельная виртуальная машина кластера кафедры АИС - Администрирование параллельных процессов

Предыдущая | Следующая