Praca na klastrach i komupterach w centrach obliczeniowych Reguły pracy na serwerach obliczeniowych: 1.Zadania są uruchamiane przez system kolejkowania lub (znacznie rzadziej) w systemie rezerwacji. Puszczanie zadań dłuższych niż parominutowe „z ręki” jest niedopuszczalne. 2.Każdy użytkownik ma przydzieloną kwotę (limit miejsca) na dysku/dyskach. 3.Do celów bieżących obliczeń można wykorzystywać dedykowane dyski stanowiące „przestrzeń ścieralną” (scratch space); pliki tam się znajdujące są usuwane przez system po czasie 1-7 dni. 4.Większe centra dysponują systemami archiwizacji (MassStore), w których można składować starsze pliki. Dostęp do tych archiwum jest wolniejszy niż do dysku.
Zasoby centrów obliczeniowych Komputery dużej mocy. Systemy plików. Systemy archiwizacji plików. Systemy wizualizacyjne. Interfejsy zarządzania zadaniami. Hardwarde do realizacji usług (www, ftp, itp.). Systemy zarządzania zadaniami i plikami, kompilatory i biblioteki, oprogramowanie użytkowe. Dostęp do zasobów centrów jest na ogół zdalny.
Systemy operacyjne na serwerach obliczeniowych Unix: Linux, IRIX (SGI), SunOS (SUN), UNICOS (CRAY) Windows (rzadko; np. na klastrze obliczeniowum w Cornell Theory Center) VMS (w zasadzie już nieobecny).
Systemy kolejkowania: PBS (Portable Batch System): najbardziej uniwersalny system kolejkowania dostępny zarówno w wersji darmowej jak i profesjonalnej. Zaprojektowany dla klastrów linuxowych ale obecnie używany wszędzie. LSF (Load Shearing Facility): zaprojektowany dla serwerów SGI ale obecnie używany wszędzie. LoadLeveler: zaprojektowany dla serwerów IBM. NQE (Network Queuing Enviroment): zaprojektowany dla serwerów CRAY.
Uruchamianie zadań w systemie PBS qsub [opcje] skryptWstawianie zadania do kolejki qdel nr_zadania Usuwanie zadania z kolejki (jeżeli zadanie już chodzi jest zabijane) qhold nr_zadania zatrzymywanie zadania czekającego w kolejce; takie zadanie jest w kolejce ale nie startuje do momentu uwolnienia. qrls nr_zadania albo qhold –r nr_zadania Uwolnienie zatrzymanego zadania. qstat [opcje] qstat [opcje] nr_zadania Sprawdzanie stanu zadań w kolejce albo stanu konkretnego zadania.
#PBS -N Mut58-Asp #PBS -q long #PBS -l nodes=2:amd2800 set NPROCS=`cat $PBS_NODEFILE | wc -l` cd $PBS_O_WORKDIR mpirun -machinefile $PBS_NODEFILE -np $NPROCS -nolocal \ /users/amber/a80/amber8/exe/sander.mpi -O \ -i md.in \ -o 3md5.o \ -e 3md5.e \ -c 2md5.r \ -p Mut58-Asp.top \ -r 3md5.r \ -x 3md5.x Przykład skryptu PBS: uruchamianie programu AMBER na klastrze piasek.chem.univ.gda.pl
$PBS_NODEFILEzmienna środowiskowa wskazująca na plik z nodami na których będzie chodziło zadnie. $PBS_O_WORKDIRzmienna środowiskowa wskazująca na katalog roboczy na którym będzie chodzilo zadanie $NPROCSliczba procesorów przydzielonych do zadania
Uruchamianie zadań w systemie LoadLeveler llsubmit [opcje] skryptWstawianie zadania do kolejki llcancel nr_zadania Usuwanie zadania z kolejki (jeżeli zadanie już chodzi jest zabijane) llhold nr_zadania zatrzymywanie zadania czekającego w kolejce; takie zadanie jest w kolejce ale nie startuje do momentu uwolnienia. llhold –r nr_zadaniaUwolnienie zatrzymanego zadania. llstatus [opcje] llstatus [opcje] nr_zadania Sprawdzanie stanu zadań w kolejce albo stanu konkretnego zadania. llclassInformacja o danych klasach zadań
job_name = ENH comment = "BGL Job by Shape" error = $(job_name).$(jobid).out output = $(job_name).$(jobid).out environment = COPY_ALL; wall_clock_limit = 24:00:00 notification = always notify_user = epl010 job_type = bluegene bg_connection = TORUS bg_size = 512 executable = /usr/local/bin/mpirun arguments = -exe `/bin/pwd`/wait_bgl.rts \ # -verbose 1 -args "-t 15" queue Przykład skryptu w systemie LoadLeveler
Programy do obliczeń molekularnej mechaniki kwantowej GAMESS (ab initio i półempiryka) GAUSSIAN (ab initio i półempiryka) MOPAC (półempiryka)
Programy do obliczeń mechaniki i dynamiki molekularnej Minimalizacja energii, analiza drgań normalnych, dynamika molekularna, dynamika z więzami, obliczenia termodynamiczne, QM/MM AMBER (pole siłowe AMBER) CHARMM (pole siłowe Charmmxx) GROMOS i GROMACS (pole siłowe GROMOS) XPLOR (pole siłowe Charmmxx) NAMD (dynamika molekularna; pole siłowe Charmxx)
Minimalizacja energii, optymalizacja globalna ECEPPAK (pole siłowe ECEPP/3) Dokowanie ligandów do receptorów AUTODOCK Skrócony opis programów po polsku ICM Warszawa CI TASK Gdańsk
Pakiety zintegrowane: Accelrys (mechanika i dynamika molekularna, mechanika kwantowa, QM/MM, modelowanie białek) Schroedinger (mechanika kwantowa, QM/MM) TRIPOS (modelowanie biomolekularne)