Table of Contents |
---|
Opis
ORCA je računalno-kemijska aplikacija općenitog tipa koji nudi širok raspon metoda
...
.
ORCA je zatvorenog koda i dolazi s Open MPI implementacijom MPI-ja.
Verzije
...
Verzija | Modul | Podrška | Paralelizacija | Supek | Padobran |
---|---|---|---|---|---|
4.2.1 | scientific/orca/4.2.1 | CPU | Open MPI 3 | ||
5.0.3 | scientific/orca/5.0.3 | CPU | Open MPI 4 | ||
5.0.4 | scientific/orca/5.0.4 | CPU |
...
Open MPI 4 | |||||
5.0.4 | scientific/orca/5.0.4-openmpi5 | CPU | Open MPI 5 | ||
6.0.0 | scientific/orca/6.0.0 | CPU | Open MPI 4 | ||
6.0.0 | scientific/orca/6.0.0-openmpi5 | CPU | Open MPI |
...
5 |
...
...
...
Note |
---|
ORCA dolazi u obliku prekompajliranih izvršnih datoteka koje se povezuju na Open MPI knjižnice |
...
. |
Službena dokumentacija
- https://www.orcasoftware.de/tutorials_orca/#
- https://orcaforum.kofo.mpg.de/app.php/portal
- ORCA 5.0.4 priručnik
Primjeri korištenja na Supeku i Padobranu
Tip |
---|
ORCA-u možete koristiti na jednak način na oba resursa. |
Warning |
---|
Zbog nemogućnosti starijih verzija Open MPI-ja da |
...
iskoriste puni potencijal Supekove Slingshot mreže |
...
, odnosno nemogućnosti širenja van jednog čvora u slučaju Padobrana, potrebno je aplikaciju zadržati unutar granica jednog čvora, koristeći PBS opciju:
|
...
To nije slučaj kod modula |
Warning |
---|
...
Postavke ORCA simulacije, koje uključuju i broj procesorskih jezgri te radne memorije, definiraju se u ulaznoj ORCA .inp
datoteci.
Budući da aplikacija ne komunicira direktno s PBS sustavom, važno je osigurati da količina resursa u toj datoteci odgovara količini zatraženih resursa u zaglavlju PBS skripte kako ne bi došlo do diskrepancije.
Broj procesorskih jezgri u ulaznu datoteku možete unijeti ručno.
...
ORCA-ina varijabla Međutim, program može i zauzeti više od toga pa se savjetuje koristiti broj koji je oko 75% zatražene memorije (po selectu) u zaglavlju PBS skripte. |
Pokretanje s ${ORCA_ROOT}/orca
Broj procesorskih jezgri ili radne memorije u ulaznu (.inp
) datoteku možete unijeti ručno.
U primjeru niže, aplikacija će se pokrenuti sa 16 MPI procesa.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
|
...
#PBS -q cpu #PBS -l select=16:mem=5000mb #PBS -l place=pack cd ${PBS_O_WORKDIR} module load scientific/orca/5.0.4 |
...
${ORCA_ROOT}/orca hydrolysis.inp |
Prije pokretanja skripte, nužno je prilagoditi input datoteku:
Code Block | ||||
---|---|---|---|---|
| ||||
!B3LYP DEF2-SVP D4 NEB-TS
%pal nprocs 16 end
%maxcore 3932
%NEB
NEB_END_XYZFILE "products.xyz"
PREOPT_ENDS TRUE
END
* XYZfile 0 1 reactants.xyz |
Pokretanje s runorca.mpi
Kao jednostavnija alternativa, izrađena je skripta runorca.mpi
Skripta će prije pokretanja ORCA-ine izvršne datoteke izmijeniti input, odnosno njegove %pal
i %maxcore
linije u skladu sa zaglavljem, odnosno definiranim brojem procesorskih jezgara i memorijom (maxcore
vrijednost se automatski postavlja kao 75% mem
vrijednosti po procesorskoj jezgri). Iz tog razloga, te linije možete izostaviti iz "izvorne" input datoteke.
Uz to, skripta će implementirati korištenje TMPDIR
direktorija, što u slučaju Padobrana dodatno može značiti i postizanje boljih performansi.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#PBS -q cpu
#PBS -l select=16:mem=5000mb
#PBS -l place=pack
cd ${PBS_O_WORKDIR}
module load scientific/orca/5.0.4
runorca.mpi --input hydrolysis.inp |
Code Block | ||||
---|---|---|---|---|
|
Primjer ORCA input skripte (bez %PAL
linije za paralelno izvođenje).
...
!B3LYP DEF2-SVP D4 NEB-TS
%NEB
NEB_END_XYZFILE "products.xyz"
PREOPT_ENDS TRUE
END
* XYZfile 0 1 reactants.xyz |
Usporedba ORCA 6 v. ORCA 5
Citat, Release Notes ORCA 6.0.0:
U ORCA-i 6, napravljene su velike promjene u kodu koje su učinile cijeli program bržim, robusnijim i manje memorijski zahtjevnim u usporedbi s prethodnim verzijama ORCA-e.
U nastavku su prikazane usporedbe identičnih, tipičnih ORCA izračuna. Korišten je sustav uobičajene složenosti, odnosno organski spoj s oko stotinu atoma.
Skaliranje
Niže su prikazani rezultati bencmarka za tipične ORCA izračune. Korišten je sustav uobičajene složenosti, odnosno organski spoj od stotinjak atoma.
Rezultati daju grubi uvid u skaliranje aplikacije, a mogu se tumačiti kao orijentacijske vrijednosti broja procesorskih (CPU) jezgri.
Tip |
---|
Skalabilnost značajnije pada nakon otprilike 16 jezgri (i ponekad ranije) za sustav tipične složenosti. Daljnje povećanje procesorskih jezgri dovodi do marginalnih povećanja performansi, a učinkovitost korištenja resursa pada. Stoga se preporuča koristiti manji broj jezgri i radije pokrenuti više poslova za isti set slobodnih resursa budući da se tako koristi učinkovitije. Dugoročno korištenje većeg broja CPU jezgri povećava Vaš udio CPU walltime-a u ukupnom (klasterskom) CPU walltime-u, što negativno utječe na Vaš fairshare udio. |