r8 - 31 Oct 2006 - 17:53:45 - Artem PervinYou are here: TWiki >  OPENTS Web > TSeminar > TSeminar2006UsingCluser

Памятка программиста для работы на вычислительном кластере (zoot.botik.ru)

Сборка и запуск MPI-программ


Используйте mpicc для компиляции MPI-программы. Например, для того чтобы скомпилировать программу sample.c, использующую коммуникациионую библиотеку MPI, достаточно в командной строке выполнить следующую команду:
> mpicc-lam -o sample sample.c

если вы хотите использовать интерконнект Ethernet. Или:
> mpicc-scali -o sample sample.c

если вы хотите использовать более скоростной интерконнект SCI.

Если вы используете интерконнект Ethernet, то прежде чем запускать программу на кластере необходимо инициализировать MPI-сервисы, с помощью команды:
> lamboot lamhosts

где lamhosts это список вычислительных узлов кластера, которые вы хотите использовать для решения вашей задачи. Для кластера zoot используйте следующий список:

server
node-1-1
node-1-2
node-2-1
node-2-2

По умолчанию, если вы не укажете файл со списком вычислительных узлов, lamboot будет использовать именно такую конфигурацию. Поэтому вы можете использовать более простой вызов:
> lamboot

Если все в порядке, lamboot завершится следующим образом:

versus@zoot ~>lamboot lamhosts

LAM 7.1.1/MPI 2 C++/ROMIO - Indiana University

В противном случае вам следует обратиться к системному администратору кластера или организаторам семинара.

Когда вы закончили работать с кластером выполните следующую команду:

> lamhalt

Команда уничтожит MPI-сервисы, созданные командой lamboot.

Если вы используете интеркннект SCI, то никаких дополнительных действий не требуется.

Для запуска программы используйте следующий синтаксис:

> mpirun-lam -np <количество процессов> <имя исполняемого файла>

Например:

> mpirun-lam -np 2 sample_program

Для программ, скомпилированных с использованием mpicc-lam. И

> mpirun-scali -np <количество процессов> <имя исполняемого файла>

Для программ, скомпилированных с использованием mpicc-scali.

Для того, чтобы измерить время выполнения программы можно воспользоваться утилитой time:

> time mpirun-lam -np <количество процессов> <имя исполняемого файла>

-- Artem Pervin - 26 Oct 2006

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r8 < r7 < r6 < r5 < r4 | More topic actions
 
Powered by TWiki

This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback