Установка PRADIOS для работы в Shared memory parallel processing (SMP) режиме для Debian/Ubuntu20.04/Astra linux

  1. Установка пререквизитов (g++-11, gcc-11, gfortran)

Для корректной работы PRADIS в системе должны быть установлены g++-11, gcc-11, gfortran

  1. Установка PRADIOS

  • Помещаем архив PRADIOS.tar.gz и скрипт PRADIOS_INSTALL.sh в директорию, в которую хотим установить PRADIOS

Например, в /home/username/PRADIOS, где /home/username - домашняя папка пользователя

  • Запускаем скрипт распаковки архива и создания переменных среды

$ ./PRADIOS_INSTALL.sh

Обязательно, после работы установщика перезапускаем терминал, например, командой

$ bash
  1. Запуск на расчёт

  • Переходим в директорию /PRADIOS/exec в которую была установлена программа запуска

$ cd ./PRADIOS/exec
  • Вводим в терминале команду для запуска расчета

$ ./PRADIOS SMP [файл_расчета]

Пример: .. code-block:: bash

$ ./PRADIOS SMP DBEND_44

Имя файла расчёта должно иметь формат: [ROOTNAME]_[RUNNUMBER].rad

где:

ROOTNAME имя набора данных
RUNNUMBER номер прогона состоящий из 4 цифр,
Например

DBEND_44_0000.rad

DBEND_44_0001.rad

  1. Принцип работы

image1

Рисунок 1 – схема работы

**

ЗАПУСК С MPI и OpenMPI

  1. Установка пререквизитов (g++-11, gcc-11, gfortran)

Для корректной работы PRADIS в системе должны быть установлены g++-11, gcc-11, gfotran

  1. Установка PRADIOS

  • Помещаем архив PRADIOS.tar.gz и скрипт PRADIOS_INSTALL.sh в директорию, в которую хотим установить PRADIOS

Например, /home/username/PRADIOS, где /home/username - домашняя папка пользователя. В случае установки PRADIOS на вычислительном кластере, требуется поместить проект в директорую, доступ к которое есть у всех узлов кластера (подробнее в инструкции по установке OpenMPI).

  • Запускаем скрипт распаковки архива и создания переменных среды

$ ./PRADIOS_INSTALL.sh

Обязательно, после работы установщика перезапускаем терминал, например, командой

$ bash

В ходе установки предполагается, что OpenMPI установлен в директорию /opt/openmpi

  1. Запуск PRADIOS с P MPI-процессами и N потоками

  • Вводим в терминале команду задающую количество потоков на ядро

$ export OMP_NUM_THREADS=[N]

ПРИМЕР:

$ export OMP_NUM_THREADS=2
  • Переходим в директорию /PRADIOS/exec в которую была установлена программа запуска

  • Вводим в терминале команду для запуска расчета

$ ./PRADIOS [input mod] [input file] [number of process] [number of

threads]

Или

$ ./PRADIOS [input mod] [input file] [number of process] [number of

threads] [дополнительные ключи]

ПРИМЕР:

$ ./PRADIOS MPI DBEND_44 2 2

файл_расчёта должен иметь формат: [ROOTNAME]_[RUNNUMBER].rad

где:

ROOTNAME имя набора данных
RUNNUMBER номер прогона состоящий из 4 цифр

DBEND_44_0000.rad

DBEND_44_0001.rad

  1. Запуск PRADIOS с P MPI-процессами и N потоками на вычислительном кластере

  • Вводим в терминале команду задающую количество потоков на ядро

$ export OMP_NUM_THREADS=[N]

ПРИМЕР:

$ export OMP_NUM_THREADS=2
  • Установка PRADIOS должна быть в общую папку (подробнее см. п. 2)

  • Переходим в директорию /PRADIOS/exec в которую была установлена программа запуска

  • Создаем machinefile содержащий данные хоста

$ nano machinefile

Пример содержания

10.1.20.1:1
10.1.20.2:1

[ip адрес машины]:[число ядер выделенных под расчет]

  • Вводим в терминале команду для запуска расчета

$ ./PRADIOS [input mod] [input file] [number of process] [number of

threads][подключаем узлы кластера]

ПРИМЕР: $ ./PRADIOS MPI DBEND_44 2 2 –hostfile machinefile

image2

Рисунок 2 – схема работы на кластере

  1. Принцип работы

image3

Рисунок 3 – схема работы

Вводим в терминале команду

./anim_to_vtk_linux64_gf [Deck Rootname]A001 > [Deck Rootname]_001.vtk
./anim_to_vtk_linux64_gf [Deck Rootname]A002 > [Deck Rootname]_002.vtk

...

./anim_to_vtk_linux64_gf [Deck Rootname]A002 > [Deck Rootname]_002.vtk

Вводим в терминале команду

./th_to_csv [TimeHistory_File]