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
Toolchain update: use new intel-OneAPI compiler as default (#5458)
* ifx add and minor fix
* set default --with-intel-classic=no
* ifx link add-in
* support new intelmpi compiler
* date info
* minor update
* Fix --with-intelmpi-classic=yes problem
* fix mpiicpx&mpiicx link error
* Truly fixed
* minor adjustment
Copy file name to clipboardExpand all lines: toolchain/README.md
+14-8Lines changed: 14 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,6 @@ and give setup files that you can use to compile ABACUS.
31
31
-[ ] A better README and Detail markdown file.
32
32
-[ ] Automatic installation of [DEEPMD](https://github.com/deepmodeling/deepmd-kit).
33
33
-[ ] Better compliation method for ABACUS-DEEPMD and ABACUS-DEEPKS.
34
-
-[ ] A better `setup` and toolchain code structure.
35
34
-[ ] Modulefile generation scripts.
36
35
-[ ] Support for AMD compiler and math lib like `AOCL` and `AOCC`
37
36
@@ -54,19 +53,23 @@ There are also well-modified script to run *install_abacus_toolchain.sh* for `gn
54
53
> ./toolchain_intel-mpich.sh
55
54
```
56
55
57
-
It is recommended to run them first to get a fast installation of ABACUS under certain environments.
56
+
It is recommended to run one of them first to get a fast installation of ABACUS under certain environments.
58
57
59
-
If you have a fresh environments and you have `sudo` permission, you can use *install_requirements.sh* to install system libraries and dependencies needed by toolchain.
58
+
If you are using Intel environments via Intel-OneAPI: please note:
59
+
1. After version 2024.0, Intel classic compilers `icc` and `icpc` are not present, so as `ifort` after version 2025.0. Intel MPI compiler will also be updated to `mpiicx`, `mpiicpx` and `mpiifx`.
60
+
2. toolchain will detect `icx`, `icpx`, `ifx`, `mpiicx`, `mpiicpx` and `mpiifx` as default compiler.
61
+
3. Users can manually specify `--with-intel-classic=yes` to use Intel classic compiler in `toolchain*.sh`, or specify `--with-intel-mpi-clas=yes` to use Intel MPI classic compiler in `toolchain*.sh` while keep the CC, CXX and F90 compiler to new version.
62
+
4. Users can manually specify `--with-ifx=no` in `toolchain*.sh` to use `ifort` while keep other compiler to new version.
63
+
5. More information is in the later part of this README.
64
+
65
+
**Notice: You GCC version should be no lower than 5 !!!, larger than 7.3.0 is recommended**
60
66
61
67
**Notice: You SHOULD `source` or `module load` related environments before use toolchain method for installation, espacially for `gcc` or `intel-oneAPI` !!!! for example, `module load mkl mpi icc compiler`**
62
68
63
69
**Notice: You SHOULD keep your environments systematic, for example, you CANNOT load `intel-OneAPI` environments while use gcc toolchain !!!**
64
70
65
71
**Notice: If your server system already have libraries like `cmake`, `openmpi`, please change related setting in `toolchain*.sh` like `--with-cmake=system`**
66
72
67
-
```shell
68
-
> ./install_ABACUS_toolchain.sh
69
-
```
70
73
71
74
All packages will be downloaded from [cp2k-static/download](https://www.cp2k.org/static/downloads). by `wget` , and will be detailedly compiled and installed in `install` directory by toolchain scripts, despite of:
Notice: You CANNOT use `icpx` compiler for GPU version of ABACUS for now, see discussion here [#2906](https://github.com/deepmodeling/abacus-develop/issues/2906) and [#4976](https://github.com/deepmodeling/abacus-develop/issues/4976)
200
203
204
+
If you wants to use ABACUS GPU-LCAO by `cusolvermp` or `elpa`, please contact the coresponding developer, toolchain do not fully support them now.
201
205
202
206
### Shell problem
203
207
@@ -238,15 +242,17 @@ When you encounter problem like `GLIBCXX_3.4.29 not found`, it is sure that your
238
242
239
243
After my test, you need `gcc`>11.3.1 to enable deepmd feature in ABACUS.
240
244
241
-
### ELPA problem via Intel-oneAPI toolchain in AMD server
245
+
### Intel-oneAPI problem
246
+
247
+
#### ELPA problem via Intel-oneAPI toolchain in AMD server
242
248
243
249
The default compiler for Intel-oneAPI is `icpx` and `icx`, which will cause problem when compling ELPA in AMD server. (Which is a problem and needed to have more check-out)
244
250
245
251
The best way is to change `icpx` to `icpc`, `icx` to `icc`. user can manually change it in toolchain*.sh via `--with-intel-classic=yes`
246
252
247
253
Notice: `icc` and `icpc` from Intel Classic Compiler of Intel-oneAPI is not supported for 2024.0 and newer version. And Intel-OneAPI 2023.2.0 can be found in website. See discussion here [#4976](https://github.com/deepmodeling/abacus-develop/issues/4976)
248
254
249
-
###Intel-oneAPI problem
255
+
#### link problem in early 2023 version oneAPI
250
256
251
257
Sometimes Intel-oneAPI have problem to link `mpirun`,
252
258
which will always show in 2023.2.0 version of MPI in Intel-oneAPI.
0 commit comments