Удаленный доступ к суперкомпьютеру (вычислительному кластеру) осуществляется через головную машину комплекса (адрес: tornado.hpc.susu.ru) и только с тех компьютеров, IP-адреса которых были указаны в заявке при регистрации (п. 4, п. 5). Более подробно про удаленный доступ можно прочитать на нашем сайте.
Пользовательские директории (вида /home/<логин>), физически размещенные на параллельном хранилище данных. Максимальный объем данных в этом каталоге обусловлен дисковой квотой для пользователя. Дисковая квота определяется при регистрации, но в дальнейшем может быть увеличена при необходимости. Кроме того, на каждом узле доступен локальный каталог для временных файлов (/tmp). После окончания работы программы временные файлы необходимо удалять.
В соответствии с правилами, пользователь самостоятельно обеспечивает резервное копирование своих данных. Длительное хранение данных пользователей на суперкомпьютере не допускается.
Пользователи «Торнадо ЮУрГУ» для удобства могут использовать пакет Environmental Modules. Данный пакет позволяет динамически настраивать переменные окружения согласно потребностям пользователя. В частности этот пакет позволяет быстро переключаться между различными версиями компиляторов и версиями библиотеки MPI.
/opt/basis/Modules/default/bin/add.modules, подтвердить выполнение — набрать yes, а затем выйти и снова зайти на кластер.module avail.module list.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 по умолчанию.module rm [имя модуля].module switch [старый модуль] [новый модуль], например, с помощью командыmodule switch compilers/cplusplus/intel/13.0.1 compilers/cplusplus/gnu/4.4.6 можно заменить используемый Intel C Compiler на Gnu C Compiler..bashrc командыmodule add <используемый>.Убедитесь в том, что вы подключили необходимые модули (например, compilers/composer_xe/2013_sp1 и parallel/mpi.intel/4.1.0.024).
Для компиляции MPI-программ рекомендуется пользоваться командами mpiicc. Эти команды автоматически подключают заголовочные файлы и библиотеки MPI.
Рекомендуется использовать опции компиляторов для оптимизации программ. Для компиляторов Intel, установленных на вычислительном кластере, приемлемый уровень оптимизации дает опция -O3, для справки о других опциях оптимизации рекомендуем обращаться к руководствам по компиляторам.
Если необходимо создать исполняемый файл, то имеет смысл воспользоваться опцией -o имя, чтобы задать его имя. Например:
mpiicc ./program.cpp -o ./program
mpiifort -O3 ./program.f -o ./program
При этом будет создан исполняемый файл program, который можно запускать на исполнение через очередь задач.
Для сборки многомодульных приложений целесообразно пользоваться утилитой GNU make.
При обычной работе в многопользовательском удаленном режиме пользователи ставят свои задачи в очередь. Управление запуском задач происходит с помощью системы управления заданиями SLURM.
Дополнительная информармация по конфигурации очередей и профилям Ansys доступны на странице.
Мы рекомендуем вам использовать команду sbatch для постановки задачи в очередь.
Для использования команды sbatch необходимо написать пользовательский скрипт следующего содержания:
#!/bin/bash
#SBATCH <ключ sbatch> <значение>
…
#SBATCH <ключ sbatch> <значение>
<пользовательские команды>
…
<пользовательские команды>
Например, приведенный ниже код запустит MPI-программу используя десять узлов (120 MPI процессов) с ограничением времени в два часа (120 минут).
#!/bin/bash
#SBATCH -N 10
#SBATCH -t 120
mpirun <имя> [параметры]
Указанный скрипт следует запускать при помощи команды очереди задач:
sbatch [опции] ./имя_скрипта.
При этом стандартный вывод программы и сообщения об ошибках не выводятся на экран, а записываются в создаваемый при запуске в рабочем каталоге файл с названием следующего вида: slurm-<уникальный_идентификатор_задачи>.out
Реально задача начнет выполняться, как только она будет в начале очереди, и будут свободны N вычислительных узлов. Система автоматически подбирает свободные узлы (ядра) для запуска задачи. Гарантируется, что на каждом узле будет запущено не более прикладных процессов, чем реально доступно вычислительных ядер. Если задача поставлена в очередь, система выдает подтверждение и присваивает задаче уникальный номер (ID).
После постановки задачи в очередь пользователь может отключиться от терминала, а затем в любой момент подключиться к системе и просматривать результаты прежде запущенных задач.
Каждый вычислительный узел имеет 12 физических процессорных ядер (24 логических, благодаря технологии гиперпоточности).
При запуске MPI задачи через систему управления заданиями SLURM на каждом вычислительным узле по умолчанию создается по 12 MPI процессов (по одному процессу на физическое ядро).
Если необходимо использовать другое количество MPI процессов на узел, то можно использовать следующие ключи к командам sbatch, salloc и srun:
-N (кол-во вычислительных узлов)
-n (кол-во MPI процессов (суммарно))
--ntasks-per-node= (кол-во MPI процессов на узел)
Например, приведенная ниже команда запустит MPI-программу на 2-х узлах, по одному MPI-процессу на каждом узле :
sbatch -n 2 --ntasks-per-node=1 mpirun <исполняемый файл openmp+MPI-программы>
Не следует использовать данный пример без использования
openmpиomp_get _num_threads ()не равному 12, т.к. не будет достигнута полная загрузка узлов
Для задач можно задать ограничение времени счета. Обычно оно задано по умолчанию, но можно его понизить, если это необходимо. По истечении указанного лимита, если задача еще считается, она будет принудительно снята со счёта. Система ориентируется на то, что задача будет считаться не более указанного лимита времени, и учитывает это при планировании пуска задач. Задачи с меньшим временным лимитом получают приоритет перед задачами с большим временным лимитом.
Просим Вас разумно пользоваться возможностями системы и проявлять уважение к другим пользователям.
Посмотреть текущее состояние очереди можно командой squeue [-u <пользователь>]
Удаление задачи выполняется командой scancel [номер задачи]
Более подробные сведения о работе с очереью SLURM можно узнать на официальном cайте проекта.
Для пользователей, не знакомых с операционной системой Linux, приводим базовые команды, необходимые для работы:
Справку по любой команде можно получить командой man <имя>.
Пример простой MPI программы расположен в каталоге: /share/cae_samples/MPI/Hybrid/
Для использования примера скопируйте его в свою домашнюю директорию:
cp -r /share/cae_samples/MPI/Hybrid/ ~/MPI_Hybrid
В каталоге ~/MPI_Hybrid будут расположены скрипты сборки (compile.sh) и постановки задачи в очередь (run_task.sh).
Ответ на данный вопрос, вы можете получить на странице Регистрация пользователей (п. 4, п. 5).
Сделайте заявку в электронной системе учета неполадок СКЦ ЛСМ https://mantis.hpc.susu.ru, и ваша проблема будет решена. Проблему, с которой Вы обращаетесь, следует описать как можно более подробно. В частности, если проблема связана с компиляцией или запуском программы, то нужно указать, в какой директории находится программа, каким образом (какими именно командами) Вы ее компилируете и запускаете, какие сообщения получаете.