Настройка AUTODYN и WMPI для параллельных вычислений по сети

Ранее я уже писал о параллельных вычислениях в AUTODYN. Сейчас же передо мной стояла задача объединения нескольких компьютеров в единый вычислительный кластер по средствам ЛВС. К счастью такая возможность предусмотрена в WMPI.

Замечания об AUTODYN 6.1

Эксперименты по параллельному вычислению в ЛВС проводились в AUTODYN версии 6.1. Выбор версии был обусловлен тем, что 6.1 отличалась по сравнению с другими версиями, которые я тестировал, более простой настройкой взаимодействия WMPI, сервера лицензий и AUTODYN.

Это ни в коем случае не означает, что «свежие» версии хуже ( я считаю, что совсем наоборот) просто у меня нет возможности испытать лицензионные промышленные версии.

Подготовка к установке окружения

Рассмотрим пример файла конфигурации группы процессов (User Guide) для WMPI:

mountain 2 “c:\mpi apps\weathersim” 10 256
squirrel 1 “c:\mpi apps\weathersim” 10 512
pacific 1 /home/wmpi-user/apps/weathersim 20 256

Формат файла:

<Machine Name> <number of procs> <executable path> [arguments]

Аналогичные файлы создает AUTODYN при конфигурации параллельного вычисления. Интерфейс настройки имеет следующий вид:
Интерфейс конфигурации кластера

Из анализа описания настройки WMPI можно сформулировать следующие рекомендации:

  • архитектура сети должна быть продумана таким образом, чтобы компьютер было легко опознать по имени хоста;
  • выделить «главный» узел (main node) ЛВС – компьютер, с которого будут запускаться задачи на расчет, обычно играющий роль сервера лицензий WMPI;
  • каждый из узлов сети должен иметь учетную запись администратора, с одинаковыми именем и паролями, содержащую в имени только латинские буквы и цифры;
  • AUTODYN должен быть установлен на всех компьютерах идентично, в одну и ту же папку, таким образом, чтобы в пути до файла adslave6.exe не встречались проблемы.

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

Установка окружения

После того, как установка AUTODYN и настройка учетных записей будет завершена, следует приступить к установке WMPI. Это приложение позволяет задавать конфигурацию кластера в процессе установки и в автоматическом режиме устанавливать библиотеку для параллельных вычислений на каждом из требуемых узлов ЛВС. В случае если какие-либо узлы окажутся недоступными в процессе установки приложения на главный узел ЛВС, установщик создаст ряд bat-файлов в папке installation (C:\Program Files\WMPI II\installation) с инструкциями по установке в ручном режиме на «проблемные» узлы.

Настройка кластера при установке WMPI

С установкой WMPI на узлы обычно возникает довольно много весьма неприятных проблем. Например, требуется специфическая настройка firewalls, отключение блокировки процессов WMPI антивирусами и тд.

После того, как установка WMPI на все узлы завершена, необходимо зарегистрировать учетную запись администратора в WMPI при помощи утилиты User Register (wmpi2reguser.exe) и проверить конфигурацию на главном узле ЛВС. Проверка конфигурации осуществляется при помощи утилиты wmpi2testconf. В случае если кластер сконфигурирован правильно, то результат команды wmpi2testconf wmpi.clusterconf будет иметь следующий вид:

wmpi2testconf for WMPI II (2.4.1) – Copyright 2004 by Critical Software (www.criticalsoftware.com)

License Server Check

+ License Server: NODE-MAIN

+ License: Valid.
—————————

Cluster configuration Interpretation

The cluster has 6 machines

* Machine node-1 *

+ Available devices:
Device: shmem Machine id: node-1
Device: tcp Machine id: node-1

+ Connections:
Connect with machine node-1 using shmem device.
Connect with machine node-2 using tcp device.
Connect with machine node-3 using tcp device.
Connect with machine node-4 using tcp device.
Connect with machine node-5 using tcp device.
Connect with machine node-main using tcp device.

+ Security:
Domain: node-main
User: admin

+ Verification contact with remote machine:
All libraries and security context verification succeeded in the remote machine.

* Machine node-2 *

+ Available devices:
Device: shmem Machine id: node-2
Device: tcp Machine id: node-2

+ Connections:
Connect with machine node-1 using tcp device.
Connect with machine node-2 using shmem device.
Connect with machine node-3 using tcp device.
Connect with machine node-4 using tcp device.
Connect with machine node-5 using tcp device.
Connect with machine node-main using tcp device.

+ Security:
Domain: node-main
User: admin

+ Verification contact with remote machine:
All libraries and security context verification succeeded in the remote machine.

* Machine node-3 *

+ Available devices:
Device: shmem Machine id: node-3
Device: tcp Machine id: node-3

+ Connections:
Connect with machine node-1 using tcp device.
Connect with machine node-2 using tcp device.
Connect with machine node-3 using shmem device.
Connect with machine node-4 using tcp device.
Connect with machine node-5 using tcp device.
Connect with machine node-main using tcp device.

+ Security:
Domain: node-main
User: admin

+ Verification contact with remote machine:
All libraries and security context verification succeeded in the remote machine.

* Machine node-4 *

+ Available devices:
Device: shmem Machine id: node-4
Device: tcp Machine id: node-4

+ Connections:
Connect with machine node-1 using tcp device.
Connect with machine node-2 using tcp device.
Connect with machine node-3 using tcp device.
Connect with machine node-4 using shmem device.
Connect with machine node-5 using tcp device.
Connect with machine node-main using tcp device.

+ Security:
Domain: node-main
User: admin

+ Verification contact with remote machine:
All libraries and security context verification succeeded in the remote machine.

* Machine node-5 *

+ Available devices:
Device: shmem Machine id: node-5
Device: tcp Machine id: node-5

+ Connections:
Connect with machine node-1 using tcp device.
Connect with machine node-2 using tcp device.
Connect with machine node-3 using tcp device.
Connect with machine node-4 using tcp device.
Connect with machine node-5 using shmem device.
Connect with machine node-main using tcp device.

+ Security:
Domain: node-main
User: admin

+ Verification contact with remote machine:
All libraries and security context verification succeeded in the remote machine.

* Machine node-main *

+ Available devices:
Device: shmem Machine id: node-main
Device: tcp Machine id: node-main

+ Connections:
Connect with machine node-1 using tcp device.
Connect with machine node-2 using tcp device.
Connect with machine node-3 using tcp device.
Connect with machine node-4 using tcp device.
Connect with machine node-5 using tcp device.
Connect with machine node-main using shmem device.

+ Security:
Domain: node-main
User: admin

+ Verification contact with remote machine:
All libraries and security context verification succeeded in the remote machine.

—————————

WMPI II configuration is correct

Настройка AUTODYN

Следующий этап – настройка AUTODYN на каждом из узлов. Для этого необходимо скопировать библиотеку wmpi2.dll (C:\Program Files\WMPI II\bin) в папку с исполняемыми файлами AUTODYN и заменить им файл wmpi.dll. На главном узле в эту папку необходимо также скопировать файл wmpi.clusterconf (C:\Program Files\WMPI II\bin) с настройками кластера.

На этом настройка AUTODYN и окружения для работы в параллельном режиме завершена.

0 comments ↓

There are no comments yet...Kick things off by filling out the form below.

Leave a Comment

or

Spam protection by WP Captcha-Free