Пошаговая установка NAMD на суперкомпьютер "Ломоносов"
Предполагается, что WinSCP и PuTTY установлены и настроены. Предполагается, что имеется аккаунт на "Ломоносове". Пусть это будет "user". То есть домашняя директория - /home/users/user/.
Скачать исходники NAMD с официального сайта http://www.ks.uiuc.edu/Development/Download/download.cgi?PackageName=NAMD к себе на компьютер. Файл: NAMD_2.9_Source.tar.gz.
- Подключиться к суперкомпьютеру с помощью WinSCP и загрузить исходники NAMD в домашнюю директорию.
- Подключиться к суперкомпьютеру через PuTTY. (Если в настройках WinSCP прописан путь к PuTTY, то сочетание клавиш Ctrl+P откроет окно PuTTY). Перейти в домашнюю директорию (если вдруг не в ней):
cd ~
- Перейти в режим установки программ:
ssh compiler
- Выбрать версию MPI для компиляции Charm и NAMD. В данном случае это OpenMPI:
mpienv -c gnu-4.4 -m openmpi-1.5
- Если еще не заведена папка для программ, то завести ее и перейти в нее. Пусть это будет "soft":
mkdir -p soft cd soft/
- Переместить исходники NAMD в директорию для программ, распаковать их, переименовать получившуюся папку и перейти в нее:
mv ~/NAMD_2.9_Source.tar.gz ./ tar xzf NAMD_2.9_Source.tar.gz mv NAMD_2.9_Source NAMD cd NAMD/
- Распаковать исходники Charm (входят в состав NAMD) в директорию NAMD и перейти в них:
tar xf charm-6.4.0.tar cd charm-6.4.0/
- Скомпилировать MPI-версию библиотек Charm++/Converse, перейти в тестовую директорию и скомпилировать тестовую программу PGM:
env MPICXX=mpicxx ./build charm++ mpi-linux-x86_64 --no-build-shared --with-production cd mpi-linux-x86_64/tests/charm++/megatest make pgm
- Выйти из режима установки, выбрать соответствующую версию MPI; перейти в директорию с только что скомпилированной программой и запустить ее (pgm) как любое MPI приложение на кластере (Ломоносове):
- Отступление о Ломоносове:
постановка задачи в очередь осуществляется командой sbatch, а просто выполнение MPI приложения - командой srun:
sbatch -k -n N -p P --comment="C" <программа с аргументами> srun -k -n N -p P --comment="C" <программа с аргументами>
N - число процессоров, должно быть не более разрешенного числа процессоров для одной задачи. P - это очередь, куда будет поставлена задача. C - комментарий к задаче.
exit mpienv -m openmpi-1.5 cd ~/soft/NAMD/charm-6.4.0/mpi-linux-x86_64/tests/charm++/megatest/ srun -k -n 4 -p test --comment="TEST_run_PGM" ompi ./pgm
- Отступление о Ломоносове:
- Дождаться результата. Если 53 теста завершено и ошибок не видно, то скорее всего все в порядке. Посмотреть лог (в текущей директории появятся 2 новых файла). Если все хорошо - снова перейти в режим установки программ и перейти в директорию NAMD
ssh compiler cd ~/soft/NAMD/
- Скачать и установить (просто распаковать в нужное место) библиотеки TCL и FFTW:
wget http://www.ks.uiuc.edu/Research/namd/libraries/fftw-linux-x86_64.tar.gz tar xzf fftw-linux-x86_64.tar.gz mv linux-x86_64 fftw
wget http://www.ks.uiuc.edu/Research/namd/libraries/tcl8.5.9-linux-x86_64.tar.gz wget http://www.ks.uiuc.edu/Research/namd/libraries/tcl8.5.9-linux-x86_64-threaded.tar.gz tar xzf tcl8.5.9-linux-x86_64.tar.gz tar xzf tcl8.5.9-linux-x86_64-threaded.tar.gz mv tcl8.5.9-linux-x86_64 tcl mv tcl8.5.9-linux-x86_64-threaded tcl-threaded
- Задать директорию и некоторые параметры для ?компиляции?, перейти в созданную директорию:
./config Linux-x86_64-g++ --charm-arch mpi-linux-x86_64 cd Linux-x86_64-g++
- Скомпилировать MPI версию ("make" работает медленнее):
gmake -j4
- Выйти из режима установки, выбрать соответствующую версию MPI; перейти в директорию с только что скомпилированной программой и проверить работоспособность:
exit mpienv -m openmpi-1.5 cd ~/soft/NAMD/Linux-x86_64-g++/ sbatch -k -n 16 -p test --comment="TEST_run_NAMD" ompi ./namd2 src/alanin
- Дождаться результата. В текущей директории должен появиться файл slurm-XXXXXX.out, где XXXXXX - номер задачи.
- Если в файле с выдачей все нормально, то добавить псевдоним в профайл для легкого вызовы установленной программы и подгрузить обновленный .bashrc:
echo "alias namd=~/soft/NAMD/Linux-x86_64-g++/namd2" >> ~/.bashrc echo "export NAMD=~/soft/NAMD/Linux-x86_64-g++/namd2" >> ~/.bashrc source ~/.bashrc
ВАЖНО!!! Каждый раз перед запуском NAMD нужно проверять какая версия MPI выбрана и выставлять openmpi-1.5, если выбрана какая-либо другая. Пример запуска на 500 CPU в очереди regular4:
mpienv -s mpienv -m openmpi-1.5 sbatch -k -n 500 -p regular4 --comment="FIO:test_run_1" ompi $NAMD File_with_parameters.conf