Installing VASP.6.X.X: Difference between revisions
Vaspmaster (talk | contribs) |
|||
| (37 intermediate revisions by 6 users not shown) | |||
| Line 1: | Line 1: | ||
As a [https://vasp.at| license holder], you can download the source code of VASP from the [https://vasp.at| VASP Portal]. If your system fulfills the [[#Requirements | requirements]], you can install VASP.6.X.X by following the | As a [https://vasp.at| license holder], you can download the source code of VASP from the [https://vasp.at| VASP Portal]. If your system fulfills the [[#Requirements | requirements]], you can install VASP.6.X.X by following the [[#Install VASP|steps below]]. There is a separate [[Installing_VASP.5.X.X|guide to installing VASP.5.X.X]]. | ||
== Requirements == | == Requirements == | ||
For the compilation of VASP | For the compilation of VASP one needs: | ||
* Compilers for Fortran (at least F2008 compliant), C, and C++. | * Compilers for Fortran (at least F2008 compliant), C, and C++. For instance, one of the following compiler suites: | ||
: | :- [https://gcc.gnu.org gcc] | ||
: | :- [https://www.intel.com/content/www/us/en/developer/tools/oneapi/toolkits.html#base-kit intel-oneapi-base-kit]+[https://www.intel.com/content/www/us/en/developer/tools/oneapi/toolkits.html#hpc-kit intel-oneapi-hpc-kit] | ||
:- [https://developer.nvidia.com/hpc-sdk NVIDIA HPC-SDK] | |||
:- [https://developer.amd.com/amd-aocc AOCC] (for AMD CPUs) | |||
{{NB|mind| For the [[OpenACC GPU port of VASP]] (to run on GPUs) on must use the compilers from the [https://developer.nvidia.com/hpc-sdk NVIDIA HPC-SDK] (>{{=}}21.2).|:}} | |||
For the [[ | * Numerical libraries: FFTW, BLAS, LAPACK, and ScaLAPACK. For example, one of the following combinations: | ||
:- [https://www.intel.com/content/www/us/en/developer/tools/oneapi/toolkits.html#base-kit intel-oneapi-mkl] | |||
:- [http://www.fftw.org FFTW] + [https://www.openblas.net OpenBLAS] + [http://www.netlib.org/scalapack ScaLAPACK] | |||
:- [https://developer.nvidia.com/hpc-sdk NVIDIA HPC-SDK] (comes with OpenBLAS and ScaLAPACK) + [http://www.fftw.org FFTW] | |||
:- [https://developer.amd.com/amd-aocl AOCL] (for AMD CPUs) | |||
To find a combination of compilers and libraries that works, have a look at [[Toolchains|our list of validated toolchains]]. | * An implementation of the Message Passing Interface (MPI). For instance, one of the following: | ||
:- [https://www.intel.com/content/www/us/en/developer/tools/oneapi/toolkits.html#hpc-kit intel-oneapi-mpi] | |||
:- [https://www.open-mpi.org OpenMPI] | |||
:- [https://developer.nvidia.com/hpc-sdk NVIDIA HPC-SDK] (comes with OpenMPI) | |||
These are the required components to build VASP. Additionally, we strongly recommend enabling HDF5 support by providing a suitable HDF5 library in the makefile.include file (see the [[makefile.include#HDF5 support (strongly recommended, and mandatory for some features)|HDF5 section here]]). Optional features available through external libraries such as libxc, libbeef, and others can also be found [[makefile.include|here]]. | |||
To find a combination of compilers and libraries that works, have a look at [[Toolchains|our list of validated toolchains]]. On a personal computer, i.e., your desktop machine or laptop, you may use [[Personal computer installation|these validated instructions]]. | |||
== Install VASP == | == Install VASP == | ||
| Line 20: | Line 31: | ||
:Download the source code of VASP from the [https://vasp.at| VASP Portal], copy it to the desired location on your machine, and unzip the file to obtain the folder <code>/path/to/vasp.x.x.x</code> and reveal [[#Subdirectories in vasp.6.x.x|its content]]. | :Download the source code of VASP from the [https://vasp.at| VASP Portal], copy it to the desired location on your machine, and unzip the file to obtain the folder <code>/path/to/vasp.x.x.x</code> and reveal [[#Subdirectories in vasp.6.x.x|its content]]. | ||
=== Step 2: Prepare makefile.include === | === Step 2: Prepare [[makefile.include]] === | ||
:Create a makefile.include starting from a template in <code>/path/to/vasp.x.x.x/arch</code> that resembles your system: | :Create a makefile.include starting from a template in <code>/path/to/vasp.x.x.x/arch</code> that resembles your system: | ||
| Line 34: | Line 45: | ||
: <pre>make DEPS=1 -jN <target></pre> | : <pre>make DEPS=1 -jN <target></pre> | ||
:where <code> DEPS=1 -jN</code> is optional and selects the parallel mode of make with <code>N</code> being the number of jobs you want to run, and <code><target></code> corresponds to <code>std</code>, <code>gam</code>, <code>ncl</code> or <code>all</code>. This builds the standard, gamma-only, | :where <code> DEPS=1 -jN</code> is optional and selects the parallel mode of make with <code>N</code> being the number of jobs you want to run, and <code><target></code> corresponds to <code>std</code>, <code>gam</code>, <code>ncl</code> or <code>all</code>. This builds the standard, gamma-only, noncollinear or all versions of VASP. The executables are <code>vasp_std</code>, <code>vasp_gam</code>, and <code>vasp_ncl</code>, respectively, which are located at <code>/path/to/vasp.X.X.X/bin/</code>. | ||
=== Step 4: Test === | === Step 4: Test === | ||
:Run the [[Validation tests|test suite]] with | :Run the [[Validation tests|test suite]] with | ||
| Line 44: | Line 54: | ||
:to confirm the build was successful. | :to confirm the build was successful. | ||
{{NB|tip|If there are issues, the VASP Forum [[https://www.vasp.at/forum/viewforum.php?f=2 installation issues]] is the appropriate place to seek support.|:}} | {{NB|tip|If there are issues, the VASP Forum [[https://www.vasp.at/forum/viewforum.php?f=2 installation issues]] is the appropriate place to seek support.|:}} | ||
{{NB|warning|VASP.6.1.0, VASP.6.1.1, and VASP.6.1.2 have a potentially serious issue related to the test suite. Please read about it in the [[Validation_tests#Known_issues|known issues]].|:}} | |||
=== Step 5: Install === | === Step 5: Install === | ||
| Line 50: | Line 61: | ||
: <pre>export PATH=$PATH:/path/to/vasp.x.x.x/bin</pre> | : <pre>export PATH=$PATH:/path/to/vasp.x.x.x/bin</pre> | ||
:for instance in your <code>~/.bashrc</code>. | :for instance in your <code>~/.bashrc</code>. You may also need to set <code>ulimit -s unlimited</code> in your <code>~/.bashrc</code>. | ||
== Subdirectories in vasp.6.x.x == | == Subdirectories in vasp.6.x.x == | ||
| Line 62: | Line 73: | ||
arch bin build src testsuite tools | arch bin build src testsuite tools | ||
| | | | ||
------------- | ---------------------- | ||
| | | | | | | | | ||
lib parser fftlib | lib parser fftlib vaspml | ||
;/path/to/vasp.x.x.x/ | ;/path/to/vasp.x.x.x/ | ||
| Line 77: | Line 88: | ||
;/path/to/vasp.x.x.x/src/parser | ;/path/to/vasp.x.x.x/src/parser | ||
:Holds the source of the {{TAG|LOCPROJ}} parser (as of versions >= 5.4.4) and a low-level makefile. | :Holds the source of the {{TAG|LOCPROJ}} parser (as of versions >= 5.4.4) and a low-level makefile. | ||
;/path/to/vasp.x.x.x/src/fftlib | ;/path/to/vasp.x.x.x/src/fftlib | ||
:Holds the source of the <tt>fftlib</tt> library that may be used to cache <tt>fftw</tt> plans. | :Holds the source of the <tt>fftlib</tt> library that may be used to cache <tt>fftw</tt> plans. | ||
;/path/to/vasp.x.x.x/src/vaspml | |||
:Holds the source of the [[VASPml library|<tt>vaspml</tt> library]] containing machine-learning features (versions >= 6.5.0). | |||
;/path/to/vasp.x.x.x/arch | ;/path/to/vasp.x.x.x/arch | ||
| Line 98: | Line 109: | ||
;/path/to/vasp.x.x.x/tools | ;/path/to/vasp.x.x.x/tools | ||
:Holds several python scripts related to the use of HDF5 input/output files. | :Holds several python scripts related to the use of HDF5 input/output files. | ||
== Validated Toolchains via CI == | |||
Please find on this [[Toolchains|toolchains page]] a comprehensive guid on which software stacks and versions are validated by our CI. Makefiles for those validated toolchains can be found in the arch subdirectory in VASP, or on this [[makefile.include|separate page]]. | |||
== Install on a common Linux distribution == | |||
If you plan to install VASP on any of the big linux distributions e.g. Debian, Ubuntu, Fedora, or Rocky Linux, please take a closer look on the separate page for [[Personal computer installation|Personal computer installations]]. There you also find instructions for Max OS X on M-series chips. For installation under Windows 11, please use WSL to install one of the supported distributions first. | |||
==Related sections== | ==Related sections== | ||
| Line 107: | Line 126: | ||
[[Validation tests]] | [[Validation tests]] | ||
[[Category:VASP]] | [[Category:VASP]] | ||
| Line 114: | Line 131: | ||
[[Category:Performance]] | [[Category:Performance]] | ||
[[Category:GPU]] | [[Category:GPU]] | ||
Latest revision as of 07:34, 11 June 2025
As a license holder, you can download the source code of VASP from the VASP Portal. If your system fulfills the requirements, you can install VASP.6.X.X by following the steps below. There is a separate guide to installing VASP.5.X.X.
Requirements
For the compilation of VASP one needs:
- Compilers for Fortran (at least F2008 compliant), C, and C++. For instance, one of the following compiler suites:
- - gcc
- - intel-oneapi-base-kit+intel-oneapi-hpc-kit
- - NVIDIA HPC-SDK
- - AOCC (for AMD CPUs)
Mind: For the OpenACC GPU port of VASP (to run on GPUs) on must use the compilers from the NVIDIA HPC-SDK (>=21.2).
- Numerical libraries: FFTW, BLAS, LAPACK, and ScaLAPACK. For example, one of the following combinations:
- - intel-oneapi-mkl
- - FFTW + OpenBLAS + ScaLAPACK
- - NVIDIA HPC-SDK (comes with OpenBLAS and ScaLAPACK) + FFTW
- - AOCL (for AMD CPUs)
- An implementation of the Message Passing Interface (MPI). For instance, one of the following:
- - intel-oneapi-mpi
- - OpenMPI
- - NVIDIA HPC-SDK (comes with OpenMPI)
These are the required components to build VASP. Additionally, we strongly recommend enabling HDF5 support by providing a suitable HDF5 library in the makefile.include file (see the HDF5 section here). Optional features available through external libraries such as libxc, libbeef, and others can also be found here.
To find a combination of compilers and libraries that works, have a look at our list of validated toolchains. On a personal computer, i.e., your desktop machine or laptop, you may use these validated instructions.
Install VASP
Step 1: Download
- Download the source code of VASP from the VASP Portal, copy it to the desired location on your machine, and unzip the file to obtain the folder
/path/to/vasp.x.x.xand reveal its content.
Step 2: Prepare makefile.include
- Create a makefile.include starting from a template in
/path/to/vasp.x.x.x/archthat resembles your system:
cp arch/makefile.include.your_choice ./makefile.include
- Adapt your makefile.include file to your system and select optional features.
Step 3: Make
- Build VASP with
make DEPS=1 -jN <target>
- where
DEPS=1 -jNis optional and selects the parallel mode of make withNbeing the number of jobs you want to run, and<target>corresponds tostd,gam,nclorall. This builds the standard, gamma-only, noncollinear or all versions of VASP. The executables arevasp_std,vasp_gam, andvasp_ncl, respectively, which are located at/path/to/vasp.X.X.X/bin/.
Step 4: Test
- Run the test suite with
make test
- to confirm the build was successful.
Tip: If there are issues, the VASP Forum [installation issues] is the appropriate place to seek support.
Warning: VASP.6.1.0, VASP.6.1.1, and VASP.6.1.2 have a potentially serious issue related to the test suite. Please read about it in the known issues.
Step 5: Install
- Copy the executables to the system
$PATHor append/path/to/vasp.x.x.x/bin/to the environment variable with
export PATH=$PATH:/path/to/vasp.x.x.x/bin
- for instance in your
~/.bashrc. You may also need to setulimit -s unlimitedin your~/.bashrc.
Subdirectories in vasp.6.x.x
The build system of VASP (as of versions >= 5.4.1) comprises the following subdirectories:
vasp.x.x.x (root directory)
|
------------------------------------------------
| | | | | |
arch bin build src testsuite tools
|
----------------------
| | | |
lib parser fftlib vaspml
- /path/to/vasp.x.x.x/
- Holds the high-level makefile and several subdirectories.
- /path/to/vasp.x.x.x/src
- Holds the source files of VASP and a low-level makefile.
- /path/to/vasp.x.x.x/src/lib
- Holds the source of the VASP library (used to be vasp.X.lib) and a low-level makefile.
- /path/to/vasp.x.x.x/src/parser
- Holds the source of the LOCPROJ parser (as of versions >= 5.4.4) and a low-level makefile.
- /path/to/vasp.x.x.x/src/fftlib
- Holds the source of the fftlib library that may be used to cache fftw plans.
- /path/to/vasp.x.x.x/src/vaspml
- Holds the source of the vaspml library containing machine-learning features (versions >= 6.5.0).
- /path/to/vasp.x.x.x/arch
- Holds a collection of makefile.include.* files.
- /path/to/vasp.x.x.x/build
- The different versions of VASP, i.e., the standard, gamma-only, non-collinear versions will be built in separate subdirectories of this directory.
- /path/to/vasp.x.x.x/bin
- Here make will store the executables.
- /path/to/vasp.x.x.x/testsuite
- Holds a suite of correctness tests to check your build.
- /path/to/vasp.x.x.x/tools
- Holds several python scripts related to the use of HDF5 input/output files.
Validated Toolchains via CI
Please find on this toolchains page a comprehensive guid on which software stacks and versions are validated by our CI. Makefiles for those validated toolchains can be found in the arch subdirectory in VASP, or on this separate page.
Install on a common Linux distribution
If you plan to install VASP on any of the big linux distributions e.g. Debian, Ubuntu, Fedora, or Rocky Linux, please take a closer look on the separate page for Personal computer installations. There you also find instructions for Max OS X on M-series chips. For installation under Windows 11, please use WSL to install one of the supported distributions first.
Related sections
Toolchains, makefile.include, Precompiler options, Compiler options, Linking to libraries, Validation tests