ЦКП ЮУрГУ СМ
Центр коллективного пользования
Южно-Уральского государственного университета

«СУПЕРКОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ»
Главная / ЦКП ЮУрГУ СМ / Сведения о системном и прикладном ПО / Системное ПО / Базовая инструкция для пользователей суперкомпьютера «Торнадо ЮУрГУ»

Базовая инструкция для пользователей суперкомпьютера «Торнадо ЮУрГУ»

Удаленный терминальный доступ

Удаленный доступ к суперкомпьютеру (вычислительному кластеру) осуществляется через головную машину комплекса (адрес: tornado.hpc.susu.ac.ru) и только с тех компьютеров, IP-адреса которых были указаны в заявке при регистрации.

В настоящий момент удаленный терминальный доступ на кластер осуществляется по протоколу SSH версии 2. Рекомендуется программа PuTTY. Вы можете скачать данную программу с нашего сайта.

Можно также использовать для терминального доступа промежуточный Unix-сервер в Вашей организации, который имеет непосредственный доступ в сеть Интернет. В этом случае надо сообщить нам IP-адрес этого сервера.

Передача файлов на кластер

Для передачи файлов на вычислительный кластер воспользуйтесь программами для работы по протоколу SSH. Установите на своем компьютере FAR со специальным плагином WinSCP. Страницы загрузки программ, а также инструкции по установке расположены на нашем сайте.

Хранение файлов

Пользовательские директории (вида /home/<имя>), физически размещенные на параллельном хранилище данных. Максимальный объем данных в этом каталоге обусловлен дисковой квотой для пользователя. Дисковая квота определяется при регистрации, но в дальнейшем может быть увеличена при необходимости. Кроме того, на каждом узле доступен локальный каталог для временных файлов (/tmp). После окончания работы программы временные файлы необходимо удалять.

Настройка окружения

Пользователи «Торнадо ЮУрГУ» для удобства могут использовать пакет Environmental Modules. Данный пакет позволяет динамически настраивать переменные окружение согласно потребностям пользователя. В частности этот пакет позволяет быстро переключаться между различными версиями компиляторов и версиями библиотеки MPI.

Основные принципы работы с пакетом Environmental Modules:

  1. Для начала, пользователю необходимо включить поддержку modules. Для этого нужно единожды выполнить команду /opt/basis/Modules/default/bin/add.modules, подтвердить выполнение — набрать yes, а затем выйти и снова зайти на кластер.
  2. Пользователь может просмотреть список доступных модулей с помощью команды module avail.
  3. Пользователь может просмотреть список используемых модулей с помощью команды module list.
  4. Пользователь может начать использовать модуль с помощью команды module add [имя модуля]. Например, можно подключить модуль Intel C Compiler с помощью команды module add compilers/cplusplus/intel/13.0.1, а Intel MPI с помощью команды module add parallel/mpi.intel/4.1.0.024. После этого, для пользователя будут выставлены соответствующие переменные окружения, так например, после загрузки модуля compilers/cplusplus/intel/12.1.0 будет выставлена переменная СС, указывающая компилятор для языка C по умолчанию.
  5. Пользователь может отключить используемый модуль с помощью команды module rm [имя модуля].
  6. Пользователь может заменить используемый модуль командой module switch [старый модуль] [новый модуль], например, с помощью команды module switch compilers/cplusplus/intel/13.0.1 compilers/cplusplus/gnu/4.4.6 можно заменить используемый Intel C Compiler на Gnu C Compiler.
  7. Для того, чтобы используемые вами модули загружались автоматически при входе на кластер, добавьте в конец файла. bashrc команды module add <используемый>.

Компиляция программ

Убедитесь в том, что вы подключили необходимые модули (например, compilers/fortran/intel/13.0.1 и parallel/mpi.intel/4.1.0.024).

Для компиляции MPI-программ рекомендуется пользоваться командами mpiicc. Эти команды автоматически подключают заголовочные файлы и библиотеки MPI.

Рекомендуется использовать опции компиляторов для оптимизации программ. Для компиляторов Intel, установленных на вычислительном кластере, приемлемый уровень оптимизации дает опция -O3, для справки о других опциях оптимизации рекомендуем обращаться к руководствам по компиляторам.

Если необходимо создать исполняемый файл, то имеет смысл воспользоваться опцией -o имя, чтобы задать его имя. Например:

mpiicc ./program.cpp -o ./program
mpiifort -O3 ./program.f -o ./program

Компиляция Xeon Phi программ:

  • Offload Mode: mpiicc ./program.cpp -o ./program
  • Native Mode: mpiicc -mmic ./program.cpp -o ./program
  • Symmetrical Mode: Для запуска MPI-программы с использованием CPU и сопроцессор а в симметричном режиме необходимо скомпилировать два бинарных файла, один как обычную MPI-программу, а второй как MPI-программу запускаемую в «Native Mode»
  • MKL: mpiicc -mkl ./program.cpp -o ./program

При этом будет создан исполняемый файл program, который можно запускать на исполнение через очередь задач.

Для сборки многомодульных приложений целесообразно пользоваться утилитой GNU make.

Постановка задачи в очередь

При обычной работе в многопользовательском удаленном режиме пользователи ставят свои задачи в очередь. Управление запуском задач происходит с помощью системы управления заданиями SLURM.

Мы рекомендуем вам использовать команду sbatch для постановки задачи в очередь.

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

#!/bin/bash

#SBATCH <ключ sbatch> <значение>

#SBATCH <ключ sbatch> <значение>

<пользовательский>


<пользовательский>

<команда>

Например, приведенный ниже код запустит MPI-программу используя десять узлов с ограничение времени в два часа.

#!/bin/bash

#SBATCH -N 10
#SBATCH -t 120

mpirun <имя> [параметры]

Указанный скрипт следует запускать при помощи команды очереди задач: sbatch [опции] ./имя_скрипта.

При этом стандартный вывод программы и сообщения об ошибках не выводятся на экран, а записываются в создаваемый при запуске в рабочем каталоге файл с названием следующего вида: slurm-<уникальный_идентификатор_задачи>.out

Реально задача начнет выполняться, как только она будет на верхушке очереди и будут свободны N процессорных ядер. Система автоматически подбирает свободные узлы (ядра) для запуска задачи. Гарантируется, что на каждом узле будет запущено не более прикладных процессов, чем реально доступно вычислительных ядер. Если задача поставлена в очередь, система выдает подтверждение и присваивает задаче уникальный номер (ID).

После постановки задачи в очередь пользователь может отключиться от терминала, а затем в любой момент подключиться к системе и просматривать результаты прежде запущенных задач.

Интерактивный доступ к Intel Xeon Phi

  • Выделение узла: salloc -N 1 -C mic_online
  • ssh <имя выделенного очередью узла>
  • С выделенного узла: ssh mic0
  • С сервера доступа пользователей: ssh node<номер>-mic0

Запуск задач на Intel Xeon Phi

    • Загрузите модуль «launcher/mic»

  • Запуск в Symmetrical Mode:
    • Скомпилируйте два файла: program и program.mic
    • Запуск задачи: sbatch -N 1 -C mic_online symmetric_run.sh ./program
  • Запуск в Offload Mode:
    • Процесс запуска не отличается от процесса запуска обычной MPI программы
  • Запуск в Native Mode:
    • Запуск задачи: sbatch -N 1 -C mic_online native_run.sh ./program.mic

Для чего нужно указывать предельное время?

Для задач можно задать ограничение времени счета. Обычно он задан по умолчанию, но можно его понизить, если это необходимо. По истечении указанного лимита, если задача еще считается, она будет принудительно снята со счёта. Система ориентируется на то, что задача будет считаться не более указанного лимита времени, и учитывает это при планировании пуска задач. Задачи с меньшим временным лимитом получают приоритет перед задачами с большим временным лимитом.

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

Просмотр состояния очереди

Посмотреть текущее состояние очереди можно командой:
squeue [-u <пользователь>]

Удаление задачи

Удаление задачи выполняется командой scancel [номер задачи]

Более подробные сведения о работе с очередью SLURM можно узнать на официальном cайте проекта.

Базовые команды ОС Linux

Для пользователей, не знакомых с операционной системой Linux, приводим базовые команды, необходимые для работы:

  • pwd— получить полный путь текущего каталога;
  • cd— сменить текущий каталог;
  • ls— распечатать содержимое каталога;
  • cp— копировать файл;
  • mv— переместить (переименовать) файл;
  • rm— удалить файл;
  • cat— выдать содержимое файла на консоль;
  • gzip— сжать файл;
  • exit — выйти из оболочки (или отключиться от машины).

Справку по любой команде можно получить командой man <имя>.

Как стать пользователем суперкомпьютеров ЮУрГУ?

Ответ на данный вопрос, вы можете получить на странице: Регистрация пользователей.

В случае проблем

Сделайте заявку в электронной системе учета неполадок СКЦ https://rt.hpc.susu.ac.ru и ваша проблема будет решена. Проблему, с которой Вы обращаетесь, следует описать как можно более подробно. В частности, если проблема связана с компиляцией или запуском программы, то нужно указать, в какой директории находится программа, каким образом (какими именно командами) Вы ее компилируете и запускаете, какие сообщения получаете.