Вход/Регистрация
Параллельное и распределенное программирование на С++
вернуться

Хьюз Камерон

Шрифт:

Среда для тестирования

|fiuJJE Onux 7.1 gnu С++ 2.95.2, Solaris 8 Workshop 6, PVM 3.4.3. У4нструкции по выполнению Эта программа порождается программой 6.1. |Примечания

Необходимо запустить на выпол н ение программу pvmd.

Компиляция и компоновка C++/PVM-npoгpaмм

Версия 3.4.x PVM-среды представлена в виде единой библиотеки libpvm3 . а. Чтобы скомпилировать PVM-программу, необходимо включить в ее код заголовочный файл pvm3.h и скомпоновать ее вместе с библиотекой libpvm3.а :

$ с++ -о mypvm_program -I $PVM_ROOT/include program.cc -L$PVM_ROOT/lib -lpvm3

Переменная среды $PVM_ROOT указывает на каталог, в котором инсталлирована библиотека PVM. При выполнении этой команды создается двоичный файл mypvm_program.

Для выполнения программ 6.1 и 6.2 сначала необходимо инсталлировать PVM-среду. Выполнить PVM-программу можно одним из трех основных способов: запустить автономный выполняемый (двоичный) файл, использовать PVM-консоль или среду XPVM.

Выполнение PVM-программы в виде двоичного файла

Во-первых, необходимо запустить программу pvmd; во-вторых, на каждом компьютере, включенном в PVM-среду, корректно ско м пилированные программы-участницы должны находиться в соответствую щ их каталогах. По умолчанию для скомпилированных программ (выполняемых файлов) используется такой каталог: $H0ME/pvm3 /bin /$PVM_ARCH

Здесь PVM_ARCH содержит имя архитектуры компьютера (см. табл. 6.1 и параграфы 1 и 2 из раздела6.2.5). Для выполняемых программ должны быть установлены соответствую щ ие разрешения на доступ и использование. ПрограммурллшЭ. можно запустить так: pvmd & или так:

pvmd hostfile &

Здесь hostfile — это файл конфи г урации, содержа щ ий специальные параметры для передачи про г рамме pvmd (см. табл. 6.2 и пара г рафы 1, 2 из раздела6.2.3). После запуска про г раммы pvmd на одном из компьютеров, включенных в среду PVM, можно запустить PVM-программу, используя следующую простую команду: $MyPvmProgram

Если эта программа порождает другие задачи, то они запустятся автоматически.

Запуск PVM-программ c помощью PVM-консоли

Для выполнения программ с помо щ ью PVM-консоли необходимо сначала запустить PVM-консоль, введя следующую команду: $pvm

Получив приглашение на ввод ко м анд pvm>, введите и м я програ мм ы, которую нужно выполнить:

pvm> spawn -> MyPvmProgram

Запуск PVM-программ c помощью XPVM

Кроме PVM-консоли, можно использовать графический интерфейс XPVM для X Windows. На рис. 6.2 показано диалоговое окно сеанса работы с XPVM-интерфейсом.

Библиотека PVM не требует, чтобы С++-программа придерживалась какой – л ибо конкретной структуры. Первая PVM-функци я, вызываема я программой, «поме щ ает» ее в PVM-среду. Дл я каждой программы, которая я вл я ется частью PVM-среды, следует всегда вызывать функцию pvm_exit . Если этого не сделать, система зависнет.

Практика показывает, что функции pvm_mytid и pvm_parent необходи м о вызывать в начале обработки задачи. Наиболее популярные категории функций PVM перечислены в табл. 6.1.

Рис. 6.2. Диалоговое окно графического интерфейса XPVM

Таблица 6.1. Семь категорий фу н кций библио т еки PVM

Категории PVM-функций

Описание

Управление процессами

Упаковка сообщений и их отправка

Распаковка сообщений и их прием

Обмен задач сигналами Управление буфером сообщений

Функции обработки информации и служебные процедуры

Групповые операции

Используются для управления PVM-процесса м и

  • Читать дальше
  • 1
  • ...
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: