Firefly проблема при счете на кластере

вопросы строения молекул и квантовой химии
Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Firefly проблема при счете на кластере

Сообщение Olsha » Пн сен 27, 2010 1:06 am

Здравствуйте!
Я пытаюсь заставить Firefly считать на кластере, который имеет 10 нод по 8 ядер на каждую. На нем установлена SUSE Linux Enterprise Server 10 и Cleo менеджер заданий, а также Intel MPI, версию под которую я и использую.
Проблема такая: на восьми ядрах программа считает, а на 16-ти не запускается, выдается ошибка:

MPI process terminated unexpectedly
Exit code -5 signaled from node-01
cleanupKilling remote processes...DONE

Может кто-нибудь сталкивался с подобным? Отчего такое может происходить?

avelon
Сообщения: 460
Зарегистрирован: Ср авг 12, 2009 5:09 pm

Re: Firefly проблема при счете на кластере

Сообщение avelon » Пн сен 27, 2010 8:23 am

опишите подробно все от инсталяции программы до ее запуска

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Пн сен 27, 2010 12:54 pm

С официального сайта скачала Firefly version 7.1.G download links, Linux Intel MPI, dynamically linked NPTL-based version.
Скопировала файлы pcgp2p.ex, p4stuff.ex, fastdiag.ex и firefly в папку ff в своей директории на кластере (/share/home/kremov/ff).
В папку ff/1/ положила файл bench01.inp.
Запуск производится через программу PuTTY, в ней прописываю:
mpirun -np 16 /home/kremov/ff/firefly -r -f -p -stdext -i /home/kremov/ff/1/bench01.inp -o /home/kremov/ff/1/bench01.out -ex /home/kremov/ff -t /home/kremov/tmp
Если вместо -np 16 задается -np 8, то в папке "1" появляются файлы bench01.out и bench01.dat, расчет проходит успешно. Если -np 16, то ничего не появляется, а в файле отчета кластера (firefly.out-xxxx) выводится указанная выше ошибка.

avelon
Сообщения: 460
Зарегистрирован: Ср авг 12, 2009 5:09 pm

Re: Firefly проблема при счете на кластере

Сообщение avelon » Пн сен 27, 2010 1:13 pm

прочитай мануал по запуску intel MPI. по вашему запуску ваша программа должна запускаться только локально на одном ноде у которого физичекое ограничение в 8 ядер. для преодоления этого вам как минимум нежен списк нодов на котором должна запускаться программа, а так же правильный запуск MPI. intel MPI запускается в несколько стадий: начала mpdboot, потом mpiexec и после окончания расчет mpdallexit (про параметры запуска этих команд могу пооветовать только RTFM). ну и есть некоторые настройки самого intel MPI которые могут повлиять на работу программы.
на каком кластере вы считаете?

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Пн сен 27, 2010 1:21 pm

Меня еще смущают строки в bench01.out в начале файла:
max # of cores/package : 4
max # of threads/package : 4
max cache sharing level : 2

Является ли это каким-то ограничением, и если да, то откуда оно берется?

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Пн сен 27, 2010 1:25 pm

Кластер Карельского НЦ РАН. Технические характеристики можно здесь посмотреть: http://cluster.krc.karelia.ru/section.php?id=2

avelon
Сообщения: 460
Зарегистрирован: Ср авг 12, 2009 5:09 pm

Re: Firefly проблема при счете на кластере

Сообщение avelon » Пн сен 27, 2010 1:45 pm

на счет строк не беспокойтесь это просто системная информация о ваших процессорах. версию firefly качали для интеловский процов?
попробуйте следующий скрипт
#!/bin/csh
mpdboot --rsh=ssh -n 2 -f host
setenv I_MPI_PIN disable
setenv I_MPI_WAIT_MODE enable
setenv I_MPI_DEBUG 1
setenv I_MPI_DEVICE sock
setenv I_MPI_DAT_LIBRARY libdat2.so
mpiexec -machinefile proc -np 16 firefly -ваши настройки для firefly
mpdallexit

файл host должен содержать названия ваших нодов, например:
node-01
node-02
файл pro должен содержать названия ваших нодов в таком колечестве сколько и ядер на каждом ноде, например:
node-01 и ниже повторяем 8 раз
node-02 и ниже повторяем 8 раз

это самый простой способ запутить, но лучше запускать mpiexec с помощью configfile name, где name имя файла в котором содержаться настройки, тогда ключ np и программа уйдут в этот файл, только не помню как его правильно оставлять( почитайте manual к intel MPI. что у вас за задачи для расчета?

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Пн сен 27, 2010 8:25 pm

Да, качала версию под Intel Xeon.
За совет спасибо, попробую.
Задачи большие. Самая срочная - оптимизация геометрии + контрольный расчет спектра системы 3NaCr(III)F6 + 18NaCl, то есть 615 электронов, и базисы не самые маленькие. Так что на восьми ядрах это хорошо если за месяц посчитается, и то вряд ли. А мне бы надо быстрее...

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Пн сен 27, 2010 8:48 pm

Еще вопрос: так, как Вы советуете, можно ведь запустить программу, только точно зная какие ноды свободны в данный момент? На кластере считает несколько человек, соответственно номера и количество свободных нод все время меняется. То есть мне придется каждый раз переписывать файлы host и pro?

avelon
Сообщения: 460
Зарегистрирован: Ср авг 12, 2009 5:09 pm

Re: Firefly проблема при счете на кластере

Сообщение avelon » Пн сен 27, 2010 8:56 pm

можно через менеджер задач, но вот только я не знаю на сколько он совметим с intel MPI. Да и мне в этом плане повезло у меня выделенный доступ к нодам на своем кластере) на сколько я знаю openmpi хорошо совместим с менеджерами задач. да и firefly есть под openmpi.

avelon
Сообщения: 460
Зарегистрирован: Ср авг 12, 2009 5:09 pm

Re: Firefly проблема при счете на кластере

Сообщение avelon » Пн сен 27, 2010 8:59 pm

ну если совсем приспичит то могу помочь посчитать на gamess us 2010 R2 на 112 ядрах)

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Вт сен 28, 2010 1:04 pm

Описываю свою попытку:
Сделала файлы host и pro, предварительно убедилась, что ноды, указанные в них, на данный момент свободны.
Сложила файлы в свою папку на кластере.
Однако уже со второй строчки скрипта начались ошибки:

kremov@krc-master:~> #!/bin/csh
kremov@krc-master:~> mpdboot --rsh=ssh -n 2 -f host
mpdboot_krc-master (handle_mpd_output 406): from mpd on krc-master, invalid port info:
no_port

Со скриптами я дела не имела никогда, поэтому вводила просто построчно команды. Может быть так нельзя?
При вводе следующих строк каждый раз пишет: -bash: setenv: command not found
Может для ввода подобного скрипта нужны права администратора? Или синтаксис команд отличается?

:( Если не выйдет ничего до конца недели, придется воспользоваться Вашим предложением. 112 ядер - это здорово. У нас весь кластер - 80 ядер.. :(

avelon
Сообщения: 460
Зарегистрирован: Ср авг 12, 2009 5:09 pm

Re: Firefly проблема при счете на кластере

Сообщение avelon » Вт сен 28, 2010 2:59 pm

chmod a+x name, где name это имя скрипта в котором все эти процедуры описаны. попробуйте так

o-oxhem
Сообщения: 425
Зарегистрирован: Вт июл 08, 2008 10:33 pm

Re: Firefly проблема при счете на кластере

Сообщение o-oxhem » Вт сен 28, 2010 3:31 pm

Olsha писал(а):Описываю свою попытку:
Со скриптами я дела не имела никогда, поэтому вводила просто построчно команды. Может быть так нельзя?
При вводе следующих строк каждый раз пишет: -bash: setenv: command not found
Может для ввода подобного скрипта нужны права администратора? Или синтаксис команд отличается?
у Вас bash не переключился на csh. Можно заменить setenv на export.
Права администратора не нужны. Скрипт - это файл, в который нужно копировать то, что привёл avelon.
Можно и не менять setenv, а загрузить csh, выполнив команду csh .

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Вт сен 28, 2010 10:26 pm

Прописала следующее:
kremov@krc-master:~> csh
krc-master /home/kremov> chmod a+x script

Текст файла script:
#!/bin/csh
mpdboot --rsh=ssh -n 2 -f host
setenv I_MPI_PIN disable
setenv I_MPI_WAIT_MODE enable
setenv I_MPI_DEBUG 1
setenv I_MPI_DEVICE sock
setenv I_MPI_DAT_LIBRARY libdat2.so
mpiexec -machinefile proc -np 16 /home/kremov/ff/firefly -r -f -p -stdext -i /home/kremov/ff/1/bench01.inp -o /home/kremov/ff/1/bench01.out -ex /home/kremov/ff -t /home/kremov/tmp
mpdallexit

Ошибок не выдал, но и никакой реакции не последовало. Требуемые ноды свободны были.
Пробовала:
1) заменить libdat2.so на название своей библиотеки (вроде бы) - libmpi.so.3.1
2) вместо mpiexec написать mpirun (в инструкции к кластеру рекомендуется с ним запускать задачи)
Никакого результата это не дало.
А от чего зависит, mpirun нужно использовать или mpiexec?

o-oxhem
Сообщения: 425
Зарегистрирован: Вт июл 08, 2008 10:33 pm

Re: Firefly проблема при счете на кластере

Сообщение o-oxhem » Вт сен 28, 2010 11:37 pm

Только сейчас понял (после чтения http://cluster.krc.karelia.ru/doc/cleo-userguide.pdf), что Вы, видимо, не можете встать в очередь, те применить cleo. Скрипт просто является лишним при наличии системы очередей. Может, там что -то чему -то противоречит. Вами понято и прочитано http://cluster.krc.karelia.ru/doc/cleo-userguide.pdf ?

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Ср сен 29, 2010 12:18 am

Ага, неоднократно прочитано :) Я не знала, что при наличии Cleo нельзя использовать скрипт.
Администраторам кластера удалось запустить программу на двух нодах, но в "монопольном режиме". Наверно и совет avelon'а применим к такому режиму только.
А я буду иметь возможность тоже работать в этом режиме, только если сделаю доклад минут на 30 в институте и убежду всех в интересности/полезности/необходимости своей работы.. :) Что ж, видимо ничего другого мне не остается..
Почему-то администраторы посоветовали поставить версию для Intel MPI. А при использовании версии для OpenMPI можно поставить задачу в очередь?

o-oxhem
Сообщения: 425
Зарегистрирован: Вт июл 08, 2008 10:33 pm

Re: Firefly проблема при счете на кластере

Сообщение o-oxhem » Ср сен 29, 2010 12:31 am

Вот есть система очередей. Внутри зашиты все нужные переменные (для MPI, например). Никакую другую систему очередей Вам формировать не позволено. И правильно. И зачем?
У Вас, кстати, нет аргумента о постановке в очередь. Может быть, потому и не ставится?
Нужно чётко (влоть до буквы) следовать инструкции.

Olsha
Сообщения: 33
Зарегистрирован: Пн сен 27, 2010 12:20 am

Re: Firefly проблема при счете на кластере

Сообщение Olsha » Ср сен 29, 2010 9:48 am

Нет, поставить задачу в очередь я могу, я во втором посте приводила строку, которую прописываю чтобы это сделать. При этом выдается сообщение типа:
Successfully added to queue main (ID=7071), как при счете на одной ноде, так и на двух.
Проблема в том, что при указании требуемого числа ядер равным восьми, firefly запускается и считает, а при 16-ти выдается указанная выше ошибка.

o-oxhem
Сообщения: 425
Зарегистрирован: Вт июл 08, 2008 10:33 pm

Re: Firefly проблема при счете на кластере

Сообщение o-oxhem » Ср сен 29, 2010 11:54 am

А в отношении Вас никакого ограничителя не стоит на число проц. ?

Ответить

Вернуться в «квантовая химия и моделирование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 21 гость