Инструкция по компиляции и запуску параллельных программ

Страницы работы

4 страницы (Word-файл)

Содержание работы

кластер   ФПМИ   НГТУ

Инструкция по компиляции и запуску параллельных программ

Все вопросы адресовать:

·  <Роман Петров (НГТУ)>

·  Артем Меркулов (merkulov@ssd.sscc.ru),

Кластер ФПМИ НГТУ состоит из 13-ти компьютеров Pentium-4. Один из компьютеров является управляющим сервером, остальные 12 - вычислительными модулями. Все компьютеры связывает Switch (100 Мгб). Вычислительные модули одновременно являются и рабочими местами для пользователей вычислительной системой. На кластере одновременно могут работать 12 пользователей (компилировать и запускать параллельные программы).

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

1.  Компиляция и запуск параллельных программ делается на сервере.

2.  Выполнение ветвей параллельных программ происходит на вычислительных модулях.

Выполнение пользовательских параллельных программ на вычислительных модулях осуществляется в режиме мультипрограммирования. Например, если все 12-ть пользователей одновременно запустят свои параллельные программы, каждая из которых состоит из 12-ти параллельных ветвей, то на каждом вычислительном модуле будет выполняться по одной из ветви всех этих 12-ти параллельных программ (всего 12 ветвей разных программ). И если нужно засечь время работы параллельной программы, то необходимо запускать ее на кластере индивидуально.

Последовательность шагов при работе на кластере

Вход в систему

1. Во всех 12-ти рабочих компьютерах должна быть загружена операционная система Linux. (Эта операция осуществляется дежурным лаборантом путем перезагрузки компьютеров).

2. На компьютере, на котором вы работаете, в специальном окне набираете свое имя (login) и пароль (password). После чего вы сразу попадаете на сервер.

3. В левом нижнем углу открывшегося (на сервере) окна стоит иконка в виде «красной шляпы». Указатель «мышки» установить на эту иконку и левой клавишей «мышки» открыть окно.

4. В самом верху этого отрывшегося окна стоит клавиша со словом: Terminal. Указатель «мышки» установить на клавишу Terminal и нажать левую кнопку «мышки».  Откроется окно.

5. В этом открытом окне набираем команду:   

mc  –ud 

Откроется окно редактора mc.

6. В окне  mc  находим свою «папку», заранее заведенную для вас администратором, и «входим» в эту папку. В этом редакторе и осуществляется работа пользователя.

Набор текста программ и редактирование

Находясь в своей папке, в командной строке набираем и выполняем команду:

mcedit  file.c

Откроется окно для набора текста. Набираем текст. Текст можно набирать и в другом редакторе. Завершаем набор текста. Для дальнейшего редактирования текста в соответствующее окно для редактирования можно входить по клавише – F4.

Компиляция параллельных программ

Находясь в папке, где стоит имя нашей программы - file.c, в командной строке набираем и выполняем команду компиляции:

mpicc  [ ]  –o file.exe  file.c

для программ с расширением – .cpp  команда:

mpiCC  [ ]  –o file.exe  file.c

В квадратных скобках может стоять одна из опций компилятора: О1, О2, О3, О4, О5.

После выполнения этой команды с помощью клавиш:   Ctrl o    открыть окно и посмотреть наличие ошибок. Исправить ошибки.

Запуск параллельных программ

Находясь в папке, где стоит имя нашей программы - file.exe, в командной строке набираем и выполняем команду запуска параллельных программ:

run.sh  «номер компьютера»  «количество компьютеров»  file.exe

«номер компьютера» - номер компьютера, обозначаемый двумя цифрами. На данном кластере это номера:  01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12. Желательно ставить номер компьютера, на котором вы работаете.

«количество компьютеров» - это количество компьютеров, необходимых для решения вашей параллельной программы. В данном случае введены ограничения на количество запускаемых компьютеров и здесь может быть только два числа -  04 или число 12. Т.е. командами запуска могут быть команды:

run.sh  «номер компьютера»  4  file.exe

или

run.sh  «номер компьютера»  12  file.exe

Каждая ветвь параллельной программы будет выполняться на отдельном физическом компьютере. После выполнения этой команды с помощью клавиш:   Ctrl o    открыть окно и посмотреть результат. (Результат может быть записан в файл).

Команды запуска могут одновременно выполняться на всех компьютерах.

Примеры команд запуска

Если пользователь на машине с номером 01 выполняет команду:   run.sh  01  4  file.exe, то: - ветвь параллельной программы с номером 0 будет запущена на машине с номером 01,

- ветвь параллельной программы с номером 1 будет запущена на машине с номером 02,

- ветвь параллельной программы с номером 2 будет запущена на машине с номером 03, и

- ветвь параллельной программы с номером 3 будет запущена на машине с номером 04.

Информация о работе