Kodomo

Пользователь

Пошаговая установка NAMD на суперкомпьютер "Ломоносов"

Предполагается, что WinSCP и PuTTY установлены и настроены. Предполагается, что имеется аккаунт на "Ломоносове". Пусть это будет "user". То есть домашняя директория - /home/users/user/.

  1. Скачать исходники NAMD с официального сайта http://www.ks.uiuc.edu/Development/Download/download.cgi?PackageName=NAMD к себе на компьютер. Файл: NAMD_2.9_Source.tar.gz.

  2. Подключиться к суперкомпьютеру с помощью WinSCP и загрузить исходники NAMD в домашнюю директорию.
  3. Подключиться к суперкомпьютеру через PuTTY. (Если в настройках WinSCP прописан путь к PuTTY, то сочетание клавиш Ctrl+P откроет окно PuTTY). Перейти в домашнюю директорию (если вдруг не в ней):
    •   cd ~
  4. Перейти в режим установки программ:
    •   ssh compiler
  5. Выбрать версию MPI для компиляции Charm и NAMD. В данном случае это OpenMPI:
    •   mpienv -c gnu-4.4 -m openmpi-1.5
  6. Если еще не заведена папка для программ, то завести ее и перейти в нее. Пусть это будет "soft":
    •   mkdir -p soft
        cd soft/
  7. Переместить исходники NAMD в директорию для программ, распаковать их, переименовать получившуюся папку и перейти в нее:
    •   mv ~/NAMD_2.9_Source.tar.gz ./
        tar xzf NAMD_2.9_Source.tar.gz
        mv NAMD_2.9_Source NAMD
        cd NAMD/
  8. Распаковать исходники Charm (входят в состав NAMD) в директорию NAMD и перейти в них:
    •   tar xf charm-6.4.0.tar
        cd charm-6.4.0/
  9. Скомпилировать 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
  10. Выйти из режима установки, выбрать соответствующую версию 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
  11. Дождаться результата. Если 53 теста завершено и ошибок не видно, то скорее всего все в порядке. Посмотреть лог (в текущей директории появятся 2 новых файла). Если все хорошо - снова перейти в режим установки программ и перейти в директорию NAMD
    •   ssh compiler
        cd ~/soft/NAMD/
  12. Скачать и установить (просто распаковать в нужное место) библиотеки 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
  13. Задать директорию и некоторые параметры для ?компиляции?, перейти в созданную директорию:
    •   ./config Linux-x86_64-g++ --charm-arch mpi-linux-x86_64
        cd Linux-x86_64-g++
  14. Скомпилировать MPI версию ("make" работает медленнее):
    •   gmake -j4
  15. Выйти из режима установки, выбрать соответствующую версию 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
  16. Дождаться результата. В текущей директории должен появиться файл slurm-XXXXXX.out, где XXXXXX - номер задачи.
  17. Если в файле с выдачей все нормально, то добавить псевдоним в профайл для легкого вызовы установленной программы и подгрузить обновленный .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
  18. ВАЖНО!!! Каждый раз перед запуском 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