You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/advanced/acceleration/cuda.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,7 +29,7 @@ To compile and use ABACUS in CUDA mode, you currently need to have an NVIDIA GPU
29
29
30
30
Check the [Advanced Installation Options](https://abacus-rtd.readthedocs.io/en/latest/advanced/install.html#build-with-cuda-support) for the installation of CUDA version support.
31
31
32
-
Setting both USE_ELPA and USE_CUDA to ON does not automatically enable ELPA to run on GPUs. ELPA support for GPUs needs to be enabled when ELPA is compiled. [enable GPU support](https://github.com/marekandreas/elpa/blob/master/documentation/INSTALL.md).
32
+
Setting both `ENABLE_ELPA` and `USE_CUDA` to ON does not automatically enable ELPA to run on GPUs. ELPA support for GPUs needs to be enabled when ELPA is compiled. [enable GPU support](https://github.com/marekandreas/elpa/blob/master/documentation/INSTALL.md).
33
33
34
34
The ABACUS program will automatically determine whether the current ELPA supports GPU based on the elpa/elpa_configured_options.h header file. Users can also check this header file to determine the GPU support of ELPA in their environment. ELPA introduced a new API elpa_setup_gpu in version 2023.11.001. So if you want to enable ELPA GPU in ABACUS, the ELPA version must be greater than or equal to 2023.11.001.
Copy file name to clipboardExpand all lines: docs/advanced/input_files/input-main.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1163,7 +1163,7 @@
1163
1163
- scalapack_gvx: Use Scalapack to diagonalize the Hamiltonian.
1164
1164
- cusolver: Use CUSOLVER to diagonalize the Hamiltonian, at least one GPU is needed.
1165
1165
- cusolvermp: Use CUSOLVER to diagonalize the Hamiltonian, supporting multi-GPU devices. Note that you should set the number of MPI processes equal to the number of GPUs.
1166
-
- elpa: The ELPA solver supports both CPU and GPU. By setting the `device` to GPU, you can launch the ELPA solver with GPU acceleration (provided that you have installed a GPU-supported version of ELPA, which requires you to manually compile and install ELPA, and the ABACUS should be compiled with -DUSE_ELPA=ON and -DUSE_CUDA=ON). The ELPA solver also supports multi-GPU acceleration.
1166
+
- elpa: The ELPA solver supports both CPU and GPU. By setting the `device` to GPU, you can launch the ELPA solver with GPU acceleration (provided that you have installed a GPU-supported version of ELPA, which requires you to manually compile and install ELPA, and the ABACUS should be compiled with -DENABLE_ELPA=ON and -DUSE_CUDA=ON). The ELPA solver also supports multi-GPU acceleration.
1167
1167
1168
1168
If you set ks_solver=`genelpa` for basis_type=`pw`, the program will stop with an error message:
1169
1169
@@ -1173,9 +1173,9 @@
1173
1173
-**Default**:
1174
1174
- PW basis: cg.
1175
1175
- LCAO basis:
1176
-
- genelpa (if compiling option `USE_ELPA` has been set)
1176
+
- genelpa (if compiling option `ENABLE_ELPA` has been set)
1177
1177
- lapack (if compiling option `ENABLE_MPI` has not been set)
1178
-
- scalapack_gvx (if compiling option `USE_ELPA` has not been set and compiling option `ENABLE_MPI` has been set)
1178
+
- scalapack_gvx (if compiling option `ENABLE_ELPA` has not been set and compiling option `ENABLE_MPI` has been set)
1179
1179
- cusolver (if compiling option `USE_CUDA` has been set)
Copy file name to clipboardExpand all lines: docs/advanced/install.md
+5-3Lines changed: 5 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -73,7 +73,9 @@ The new EXX implementation depends on two external libraries:
73
73
74
74
These two libraries are added as submodules in the [deps](https://github.com/deepmodeling/abacus-develop/tree/develop/deps) folder. Set `-DENABLE_LIBRI=ON` to build with these two libraries.
75
75
76
-
If you prefer using manually downloaded libraries, provide `-DLIBRI_DIR=${path to your LibRI folder} -DLIBCOMM_DIR=${path to your LibComm folder}`.
76
+
```{note}
77
+
`ENABLE_LIBCOMM` is deprecated because LibComm is not a standalone ABACUS feature. CMake locates it automatically as a dependency of LibRI. If you prefer using manually downloaded libraries, enable LibRI and provide their locations via `-DLIBRI_DIR=/path/to/LibRI` and `-DLIBCOMM_DIR=/path/to/LibComm`.
78
+
```
77
79
78
80
79
81
## Build with DFT-D4 support
@@ -134,13 +136,13 @@ If you are confident that your MPI supports CUDA Aware, you can add `-DUSE_CUDA_
134
136
135
137
> Note: We recommend using the latest available compiler sets, since they offer faster implementations of math functions.
136
138
137
-
This flag is disabled by default. To build math functions from source code, define `USE_ABACUS_LIBM` flag. It is expected to get a better performance on legacy versions of `gcc` and `clang`.
139
+
This flag is disabled by default. To build math functions from source code, define `ENABLE_ABACUS_LIBM` flag. It is expected to get a better performance on legacy versions of `gcc` and `clang`.
Copy file name to clipboardExpand all lines: docs/parameters.yaml
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -544,14 +544,14 @@ parameters:
544
544
* scalapack_gvx: Use Scalapack to diagonalize the Hamiltonian.
545
545
* cusolver: Use CUSOLVER to diagonalize the Hamiltonian, at least one GPU is needed.
546
546
* cusolvermp: Use CUSOLVER to diagonalize the Hamiltonian, supporting multi-GPU devices. Note that you should set the number of MPI processes equal to the number of GPUs.
547
-
* elpa: The ELPA solver supports both CPU and GPU. By setting the `device` to GPU, you can launch the ELPA solver with GPU acceleration (provided that you have installed a GPU-supported version of ELPA, which requires you to manually compile and install ELPA, and the ABACUS should be compiled with -DUSE_ELPA=ON and -DUSE_CUDA=ON). The ELPA solver also supports multi-GPU acceleration.
547
+
* elpa: The ELPA solver supports both CPU and GPU. By setting the `device` to GPU, you can launch the ELPA solver with GPU acceleration (provided that you have installed a GPU-supported version of ELPA, which requires you to manually compile and install ELPA, and the ABACUS should be compiled with -DENABLE_ELPA=ON and -DUSE_CUDA=ON). The ELPA solver also supports multi-GPU acceleration.
548
548
549
549
If you set ks_solver=`genelpa` for basis_type=`pw`, the program will stop with an error message:
550
550
551
551
``text genelpa can not be used with plane wave basis. ``
552
552
553
553
Then the user has to correct the input file and restart the calculation.
554
-
default_value: "\n - PW basis: cg.\n - LCAO basis:\n - genelpa (if compiling option `USE_ELPA` has been set)\n - lapack (if compiling option `ENABLE_MPI` has not been set)\n - scalapack_gvx (if compiling option `USE_ELPA` has not been set and compiling option `ENABLE_MPI` has been set)\n - cusolver (if compiling option `USE_CUDA` has been set)"
554
+
default_value: "\n - PW basis: cg.\n - LCAO basis:\n - genelpa (if compiling option `ENABLE_ELPA` has been set)\n - lapack (if compiling option `ENABLE_MPI` has not been set)\n - scalapack_gvx (if compiling option `ENABLE_ELPA` has not been set and compiling option `ENABLE_MPI` has been set)\n - cusolver (if compiling option `USE_CUDA` has been set)"
Copy file name to clipboardExpand all lines: docs/quick_start/easy_install.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -163,7 +163,7 @@ Here, 'build' is the path for building ABACUS; and '-D' is used for setting up s
163
163
164
164
-`FFTW3_DIR`: Path to FFTW3.
165
165
-`LIBRI_DIR`: (Optional) Path to LibRI.
166
-
-`LIBCOMM_DIR`: (Optional) Path to LibComm.
166
+
-`LIBCOMM_DIR`: (Optional) Path to LibComm when `ENABLE_LIBRI=ON`.
167
167
168
168
```{important}
169
169
For some dependencies built with CMake, such as Libxc, dftd4, cereal, and RapidJSON, you'll have to add their prefix paths to the environment variable `CMAKE_PREFIX_PATH` so that CMake can correctly find and use their CMake configuration files. A non-general variable such as `PKG_DIR` is discouraged for these packages.
@@ -172,14 +172,14 @@ For some dependencies built with CMake, such as Libxc, dftd4, cereal, and RapidJ
172
172
- Components: The values of these variables should be 'ON', '1' or 'OFF', '0'. The default values are given below.
173
173
-`ENABLE_LCAO=ON`: Enable LCAO calculation. If SCALAPACK, ELPA or CEREAL is absent and only require plane-wave calculations, the feature of calculating LCAO basis can be turned off.
174
174
-`ENABLE_LIBXC=OFF`: [Enable Libxc](../advanced/install.md#add-libxc-support) to suppport variety of functionals.
175
-
-`ENABLE_LIBRI=OFF`: [Enable LibRI](../advanced/install.md#add-libri-support)to suppport variety of functionals. If`LIBRI_DIR` and `LIBCOMM_DIR`are defined, `ENABLE_LIBRI` will set to 'ON'.
176
-
-`USE_OPENMP=ON`: Enable OpenMP support. Building ABACUS without OpenMP is not fully tested yet.
175
+
-`ENABLE_LIBRI=OFF`: [Enable LibRI](../advanced/install.md#add-libri-support)and its LibComm dependency for hybrid-functional calculations. Set`LIBRI_DIR` and `LIBCOMM_DIR`to use manually installed libraries.
176
+
-`ENABLE_OPENMP=ON`: Enable OpenMP support. Building ABACUS without OpenMP is not fully tested yet.
177
177
-`BUILD_TESTING=OFF`: [Build unit tests](../advanced/install.md#build-unit-tests).
-`ENABLE_MPI=ON`: Enable MPI parallel compilation. If set to `OFF`, a serial version of ABACUS will be compiled. It now supports both PW and LCAO.
180
180
-`ENABLE_COVERAGE=OFF`: Build ABACUS executable supporting [coverage analysis](../CONTRIBUTING.md#generating-code-coverage-report). This feature has a drastic impact on performance.
181
181
-`ENABLE_ASAN=OFF`: Build with Address Sanitizer. This feature would help detecting memory problems.
182
-
-`USE_ELPA=ON`: Use ELPA library in LCAO calculations. If this value is set to OFF, ABACUS can be compiled without ELPA library.
182
+
-`ENABLE_ELPA=ON`: Use ELPA library in LCAO calculations. If this value is set to OFF, ABACUS can be compiled without ELPA library.
0 commit comments