Содержание
- Подключение к вычислительному кластеру МГИ НАН Украины
- Параллельная среда MPI
- Прочие библиотеки
- Система локально управления ресурcами Torque
Подключение к вычислительному кластеру МГИ НАН Украины
Linux клиент
ssh user@hpc-mhi.org -o pubkeyauthentication=no
Windows клиент
В качестве ssh-клиента для ОС Windows Вы можете использовать PuTTY. Не забудьте указать в настройках кодировку UTF-8:
X-forward
На кластере доступна возможность использовать графические утилиты. Для этого необходимо активировать X-forward на клиенте:
ssh -X user@hpc-mhi.org
Обмен данными с кластером
Для Linux клиента Вы можете использовать scp (подробнее – man scp), а также более удобные утилиты, такие как Midnight Commander (подробнее – man mc):
Для Windows клиента Вы можете использовать WinSCP:
Параллельная среда MPI
Доступные дистрибутивы
На кластере доступны реализации Mpich2 версии 1.4.1p1 и Open MPI версии 1.4.4, собранные как для компиляторов GNU, так и для компиляторов Intel. Для того, чтобы изменить текущую параллельную среду, используйте команду mpi-switch :
mpi-switch
--------------------------------------------------------------------------------
Использование: mpi-switch [КЛЮЧ]
Меняет параллельную среду MPI.
По умолчанию используется связка "Mpich2 + Intel compilers".
-v показать текущую связку
-1 установить связку "Mpich2 + GNU compilers"
-2 установить связку "Mpich2 + Intel compilers"
-3 установить связку "Open MPI + GNU compilers"
-4 установить связку "Open MPI + Intel compilers"
--------------------------------------------------------------------------------
Компиляция программ, использующих библиотеки MPI
Для программ, написанных на языке Фортран:
mpif90 1.f -o 1.out
Для программ, написанных на языке Си:
mpiсс 1.с -o 1.out
Для программ, написанных на языке Си++:
mpic++ 1.сpp -o 1.out
Прочие библиотеки
Netcdf
Версия библиотеки 4.1.2, подробнее:
nc-config --all
При компиляции необходимо указывать следующие ключи:
ifort 1.f -o 1.out -lnetcdf -lnetcdff
Система локально управления ресурсами Torque
Управление заданиями
Для того, чтобы поставить программу считаться в очередь заданий, необходимо составить соответствующее задание в виде pbs-скрипта. В скрипте Вы долны осуществить переход в рабочий каталог (где находится Ваша программа) либо использовать абсолютные пути (это касается и файлов вывода). Готовый скрипт ставится в очередь командой qsub :
qsub 1.pbs
19871.console
Посмотреть состояние задания Вы можете командой qstat :
qstat -a
console:
Job ID Username Queue Jobname SessID NDS TSK Memory Time S Time
-------------------- -------- -------- ---------------- ------ ----- --- ------ ----- - -----
19871.console user batch my_prog 24072 1 0 -- 300:0 R 0:05
Чтобы удалить задание из очереди, воспользуйтесь командой qdel :
qdel 19871
Запуск последовательных программ
Pbs-скрипт для запуска однопроцессорной программы 1.x :
cat 1.pbs
#!/bin/sh
#PBS -N my_prog # название задания в очереди
#PBS -l mem=100mb # запрашиваемое количество оперативной памяти
#PBS -l cput=00:05:00 # запрашиваемое количество процессорного времени
cd ~/progs/ # путь к программе
./1.x # запуск
Запуск параллельных mpi-программ
Pbs-скрипт для запуска многопроцессорной программы 1.x, использующей библиотеки MPI и требующей 16 процессоров. Стоит отметить, что в скрипте не нужно указывать «-np 16» перед mpirun/mpiexec. Достаточно указать необходимое число вычислительных узлов(nodes) и процессоров(ppn) на них:
cat 1.pbs
#!/bin/sh
#PBS -N my_prog # название задания в очереди
#PBS -l nodes=2:ppn=8 # запрашиваемое количество узлов и процессоров
#PBS -l mem=100mb # запрашиваемое количество оперативной памяти
#PBS -l cput=00:05:00 # запрашиваемое количество процессорного времени
cd ~/progs/ # путь к программе
mpirun ./1.x # запуск
Важно! Администрация кластера оставляет за собой право и будет удалять процессы программ, запущенных без использования системы локального управления ресурсами.