Высокопроизводительные вычисления на кластерах. Беликов Д.А - 144 стр.

UptoLike

144
легко и эффективно собраны с использованием механизмов, реали-
зованных в пакете. Более того, PETSc открывает большие возмож-
ности для контроля хода решения задачи во время исполнения про-
граммы без какого-либо дополнительного пользовательского про-
граммного кода. Опции пакета включают в себя управление выбо-
ром солвера (решателя), предобусловливателя, параметров задачи.
PETSc использует стандарт MPI для межпроцессорных обменов,
что позволяет включать в PETSc-программы процедуры MPI. Одна-
ко пользователь изолирован от деталей передачи сообщений внутри
PETSc, поскольку они не видимы внутри параллельных объектов
(векторов, матриц).
Ниже представлено краткое описание порядка использования
библиотеки PETSc в FORTRAN-программах.
8.1 Компиляция и запуск PETSc-программ
Чтобы написать новую программу с использованием PETSc, ре-
комендуется предварительно ознакомиться с одним из примеров
соответствующего класса задач. Примеры PETSc-программ распо-
ложены в ${PETSC_DIR}/src/<library>/, где <library> означает одну
из библиотек PETSc, например snes или ksp.
Для компилирования PETSc-программы на кластере ТГУ CКИФ
Cyberia можно воспользоваться скриптом petsc:
petsc petsc_program_name.F ,
где petsc_program_name.F – название программы на языке Fortran.
Использование расширения .F вместо стандартного .f является
обязательным.
После выполнения скрипта в текущей директории ($pwd) будет
создана исполняемая программа с именем petsc_program_name.
Все PETSc-программы базируются на стандарте MPI. Поэтому
чтобы выполнить параллельную программу PETSc, достаточно за-
пустить:
mpirun -np p ./petsc_program_name,
где pчисло процессоров.
Эта команда запустит программу petsc_program_name на p про-
цессорах. Откомпилированная PETSс-программа также может быть
запущена с использованием некоторых опций, которые можно по-
смотреть, запустив программу так: