HPC/Applications/vasp5: Difference between revisions

From CNM Wiki
Jump to navigation Jump to search
m (Redirected page to HPC/Applications/vasp)
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
== VASP binaries ==
#REDIRECT [[HPC/Applications/vasp]]
Some options for VASP cannot be configured at runtime (by input data) but must be chosen when compiling.
Since no single set of compile-time choices is appropriate for all uses, a number of binaries are provided, distinguished by their name.
 
The vasp5 modules from version vasp5/5.2.12a-mkl-4 onwards
contain several binaries built using different sets of preprocessor flags in the Makefile.
Earlier modules only contain two binaries, <code>vasp</code> and <code>vasp-gamma</code>.
Additional binaries are provided for useful preprocessor flag combinations
after applying patches from the group of Graeme Henkelman (UT Austin) to the source code:
* [http://theory.cm.utexas.edu/vtsttools/ Transition state tools for VASP], and
* [http://theory.cm.utexas.edu/vtsttools/bader/ DOS Projection in Bader Volumes].
 
To verify the binaries available for a module, run, once the module has been loaded:
ls $VASP5_HOME/bin
 
Copy a sample job script from:
$VASP5_HOME/vasp.job
 
Choose a binary appropriate for your task and pass it to <code>mpirun</code> in the job script. There is no need for full path names.
 
=== Available binaries and their flags ===
<!--
sed -n '/DMPI_BLOCK/s/.*"//p' embody-5.2.12a-mkl-4/build.log  | uniq
sed -n '/DMPI_BLOCK/s/.*8000//p' embody-5.2.12a-mkl-4/build.log  | uniq
-->
This table lists the names of the binaries compiled from
* combinations of preprocessor flags, and
* variants of the source code, primarily enhancing capabilities of ionic updates.
 
{| class="wikitable" cellpadding="5" style="text-align:left; font-family: monospace;"
|- style="background:#e4e4e4; text-align:center; font-weight: bold; font-family: sans-serif;"
| rowspan="2" | MD capabilities
| rowspan="2" | Flags used
| colspan="3" align="center" | Binary name
|- style="background:#e4e4e4; text-align:center; font-weight: bold; font-family: sans-serif;"
| Official source
| [http://theory.cm.utexas.edu/vtsttools/downloads/ Patched for VTST]
| [http://theory.cm.utexas.edu/vtsttools/dos/ Patched for Bader-projected DOS]
|-
! rowspan="4" style="background:#e4e4e4; font-family: sans-serif;" | Conventional
| style="background:#e4e4e4;" | (none)
| style="background:none;" | '''vasp'''
| style="background:#ded;" | '''vasp-vtst'''
| style="background:#fee;" | '''vasp-baderdos'''
|-
| style="background:#e4e4e4;" | -DNGZhalf
| style="background:none;" | '''vasp-chargehalf'''
| style="background:#ded;" | '''vasp-vtst-chargehalf'''
| style="background:#fee;" | '''vasp-baderdos-chargehalf'''
|-
| style="background:#e4e4e4;" | -DwNGZhalf
| style="background:none;" | '''vasp-gamma'''
| style="background:#ded;" | '''vasp-vtst-gamma'''
| style="background:#fee;" | '''vasp-baderdos-gamma'''
|-
| style="background:#e4e4e4;" | -DwNGZhalf -DNGZhalf
| style="background:none;" | '''vasp-gamma-chargehalf'''
| style="background:#ded;" | '''vasp-vtst-gamma-chargehalf'''
| style="background:#fee;" | '''vasp-baderdos-gamma-chargehalf'''
|-
! rowspan="4" style="background:#e4e4e4; font-family: sans-serif;" | [http://cms.mpi.univie.ac.at/vasp/vasp/Advanced_MD_techniques.html Advanced<br>MD techniques]
| style="background:#e4e4e4;" | -Dtbdyn
| style="background:#ddf;" | '''vasp-tbdyn'''
| rowspan="4" style="background:#f0f0f0; text-align:center; font-style:oblique; font-family: sans-serif;" | not useful
| rowspan="4" style="background:#f0f0f0; text-align:center; font-style:oblique; font-family: sans-serif;" | not useful
|-
| style="background:#e4e4e4;" | -Dtbdyn -DNGZhalf
| style="background:#ddf;" | '''vasp-tbdyn-chargehalf'''
|-
| style="background:#e4e4e4;" | -Dtbdyn -DwNGZhalf
| style="background:#ddf;" | '''vasp-tbdyn-gamma'''
|-
| style="background:#e4e4e4;" | -Dtbdyn -DwNGZhalf -DNGZhalf
| style="background:#ddf;" | '''vasp-tbdyn-gamma-chargehalf'''
|}
 
=== Explanantion of flags ===
From <code>vasp.5.2/makefile.linux_pg</code>
<pre>
#-----------------------------------------------------------------------
# possible options for CPP:
# NGXhalf            charge density  reduced in X direction
# wNGXhalf            gamma point only reduced in X direction
# avoidalloc          avoid ALLOCATE if possible
# IFC                work around some IFC bugs
# CACHE_SIZE          1000 for PII,PIII, 5000 for Athlon, 8000 P4
# RPROMU_DGEMV        use DGEMV instead of DGEMM in RPRO (usually  faster)
# RACCMU_DGEMV        use DGEMV instead of DGEMM in RACC (faster on P4)
#  **** definitely use -DRACCMU_DGEMV if you use the mkl library
#-----------------------------------------------------------------------
#-----------------------------------------------------------------------
# additional options for CPP in parallel version (see also above):
# NGZhalf              charge density  reduced in Z direction
# wNGZhalf              gamma point only reduced in Z direction
# scaLAPACK            use scaLAPACK (usually slower on 100 Mbit Net)
#-----------------------------------------------------------------------
</pre>
 
=== Common flags ===
-DIFC -DRPROMU_DGEMV  -DRACCMU_DGEMV -DCACHE_SIZE=16000  -DMPI -DMPI_BLOCK=8000
 
== vdW-DF functional ==
All binaries support the use of the [http://cms.mpi.univie.ac.at/vasp/vasp/vdW_DF_functional_Langreth_Lundqvist_et_al.html vdW-DF functional of Langreth and Lundqvist et al.]
 
No specific preparations are needed other than setting the INCAR flags as documented. The binaries will find the required precalculated kernel  file <code>vdw_kernel.bindat</code> by means of the environment variable <code>$VASP5_HOME</code> which is set by the module. This is a Carbon-specific extension.

Latest revision as of 15:23, June 25, 2013