From 7be854c6872ce92aed841b98e8530fcf3d4e17d7 Mon Sep 17 00:00:00 2001 From: QuantumMisaka Date: Wed, 19 Nov 2025 08:56:09 +0800 Subject: [PATCH 1/7] repair install_mpich.sh to fix mpich installation --- toolchain/scripts/stage1/install_mpich.sh | 34 +++++++++++++---------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/toolchain/scripts/stage1/install_mpich.sh b/toolchain/scripts/stage1/install_mpich.sh index cafda9200d..c0909b4a9c 100755 --- a/toolchain/scripts/stage1/install_mpich.sh +++ b/toolchain/scripts/stage1/install_mpich.sh @@ -81,6 +81,8 @@ case "${with_mpich}" in MPICC="" \ FFLAGS="${FCFLAGS} ${compat_flag}" \ FCFLAGS="${FCFLAGS} ${compat_flag}" \ + --without-x \ + --enable-gl=no \ --with-device=${MPICH_DEVICE} \ > configure.log 2>&1 || tail -n ${LOG_LINES} configure.log make -j $(get_nprocs) > make.log 2>&1 || tail -n ${LOG_LINES} make.log @@ -90,19 +92,19 @@ case "${with_mpich}" in fi if [ "${PACK_RUN}" = "__TRUE__" ]; then echo "--pack-run mode specified, skip system check" - else - check_dir "${pkg_install_dir}/bin" - check_dir "${pkg_install_dir}/lib" - check_dir "${pkg_install_dir}/include" - check_install ${pkg_install_dir}/bin/mpiexec "mpich" && MPIRUN="${pkg_install_dir}/bin/mpiexec" || exit 1 - check_install ${pkg_install_dir}/bin/mpicc "mpich" && MPICC="${pkg_install_dir}/bin/mpicc" || exit 1 - check_install ${pkg_install_dir}/bin/mpicxx "mpich" && MPICXX="${pkg_install_dir}/bin/mpicxx" || exit 1 - check_install ${pkg_install_dir}/bin/mpifort "mpich" && MPIFC="${pkg_install_dir}/bin/mpifort" || exit 1 - MPIFORT="${MPIFC}" - MPIF77="${MPIFC}" - MPICH_CFLAGS="-I'${pkg_install_dir}/include'" - MPICH_LDFLAGS="-L'${pkg_install_dir}/lib' -Wl,-rpath,'${pkg_install_dir}/lib'" + exit 0 fi + check_dir "${pkg_install_dir}/bin" + check_dir "${pkg_install_dir}/lib" + check_dir "${pkg_install_dir}/include" + check_install ${pkg_install_dir}/bin/mpiexec "mpich" && MPIRUN="${pkg_install_dir}/bin/mpiexec" || exit 1 + check_install ${pkg_install_dir}/bin/mpicc "mpich" && MPICC="${pkg_install_dir}/bin/mpicc" || exit 1 + check_install ${pkg_install_dir}/bin/mpicxx "mpich" && MPICXX="${pkg_install_dir}/bin/mpicxx" || exit 1 + check_install ${pkg_install_dir}/bin/mpifort "mpich" && MPIFC="${pkg_install_dir}/bin/mpifort" || exit 1 + MPIFORT="${MPIFC}" + MPIF77="${MPIFC}" + MPICH_CFLAGS="-I'${pkg_install_dir}/include'" + MPICH_LDFLAGS="-L'${pkg_install_dir}/lib' -Wl,-rpath,'${pkg_install_dir}/lib'" ;; __SYSTEM__) echo "==================== Finding MPICH from system paths ====================" @@ -176,9 +178,9 @@ EOF prepend_path PATH "${pkg_install_dir}/bin" export PATH="${pkg_install_dir}/bin":\${PATH} export LD_LIBRARY_PATH="${pkg_install_dir}/lib":\${LD_LIBRARY_PATH} -export LD_RUN_PATH "${pkg_install_dir}/lib":\${LD_RUN_PATH} -export LIBRARY_PATH "${pkg_install_dir}/lib":\${LIBRARY_PATH} -export CPATH "${pkg_install_dir}/include":\${CPATH} +export LD_RUN_PATH="${pkg_install_dir}/lib":\${LD_RUN_PATH} +export LIBRARY_PATH="${pkg_install_dir}/lib":\${LIBRARY_PATH} +export CPATH="${pkg_install_dir}/include":\${CPATH} EOF fi cat "${BUILDDIR}/setup_mpich" >> ${SETUPFILE} @@ -189,6 +191,8 @@ cat << EOF >> ${INSTALLDIR}/lsan.supp # MPICH 3.3.2 with GCC 10.3.0 leak:MPIR_Find_local_and_external leak:MPIU_Find_local_and_external +# MPICH 4.2.3 +leak:MPL_malloc EOF load "${BUILDDIR}/setup_mpich" From 4ad64bba845d7e1a9a65e7b7b2a943a484fad150 Mon Sep 17 00:00:00 2001 From: QuantumMisaka Date: Wed, 19 Nov 2025 08:57:08 +0800 Subject: [PATCH 2/7] update toolchain_gnu.sh --- toolchain/toolchain_gnu.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/toolchain/toolchain_gnu.sh b/toolchain/toolchain_gnu.sh index 23176722b4..44cfbe4b36 100755 --- a/toolchain/toolchain_gnu.sh +++ b/toolchain/toolchain_gnu.sh @@ -66,6 +66,7 @@ PACK_RUN_MODE="no" # Set to "yes" to enable pack-run mode CMAKE_VERSION="main" # main=3.31.7, alt=3.30.5 OPENMPI_VERSION="main" # main=5.0.8, alt=4.1.6 +MPICH_VERSION="main" # main=4.1.6, alt=4.1.5 OPENBLAS_VERSION="main" # main=0.3.30, alt=0.3.27 ELPA_VERSION="main" # main=2025.06.001, alt=2024.05.001 LIBXC_VERSION="main" # main=7.0.0, alt=6.2.2 @@ -104,6 +105,7 @@ exec ./install_abacus_toolchain_new.sh \ --with-4th-openmpi="$WITH_4TH_OPENMPI" \ --package-version cmake:"$CMAKE_VERSION" \ --package-version openmpi:"$OPENMPI_VERSION" \ + --package-version mpich:"$MPICH_VERSION" \ --package-version openblas:"$OPENBLAS_VERSION" \ --package-version elpa:"$ELPA_VERSION" \ --package-version libxc:"$LIBXC_VERSION" \ From c43f2fa02c8daeb84b7197b9c1302f3ecaa2ea39 Mon Sep 17 00:00:00 2001 From: QuantumMisaka Date: Wed, 19 Nov 2025 09:21:53 +0800 Subject: [PATCH 3/7] docs(quick_start): Update easy_install.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加通过git更新到最新版本的详细步骤 - 扩展工具链安装说明,包括GCC-AMD和AOCC-AOCL支持 - 重新组织conda安装部分,增加开发环境配置说明 - 优化文档结构,将手动安装部分后移 --- docs/quick_start/easy_install.md | 186 ++++++++++++++++--------------- 1 file changed, 97 insertions(+), 89 deletions(-) diff --git a/docs/quick_start/easy_install.md b/docs/quick_start/easy_install.md index a3e67230cf..b13871c2b1 100644 --- a/docs/quick_start/easy_install.md +++ b/docs/quick_start/easy_install.md @@ -1,6 +1,6 @@ # Easy Installation -This guide helps you install ABACUS with basic features. **For DeePKS, DeePMD and Libxc support, or building with `make`, please refer to [the advanced installation guide](../advanced/install.md)** after going through this page. We recommend building ABACUS with `cmake` to avoid dependency issues. We recommend compiling ABACUS (and possibly its requirements) from the source code using the latest compiler for the best performace. You can try [toolchain](#install-requirements-by-toolchain) to install ABACUS and dependencies in a source-code compilation way with convience. You can also deploy ABACUS **without building** by [Docker](#container-deployment) or [conda](#install-by-conda). Please note that ABACUS only supports Linux; for Windows users, please consider using [WSL](https://learn.microsoft.com/en-us/windows/wsl/) or docker. +This guide helps you install ABACUS with basic features. **For DeePKS, DeePMD and Libxc support, or building with `make`, please refer to [the advanced installation guide](../advanced/install.md)** after going through this page. We recommend building ABACUS with `cmake` to avoid dependency issues. We recommend compiling ABACUS (and possibly its requirements) from the source code using the latest compiler for the best performace. You can use [toolchain](#install-requirements-by-toolchain) to install ABACUS and dependencies in a source-code compilation way with convience. You can also deploy ABACUS **without building** by [Docker](#container-deployment) or [conda](#install-by-conda). Please note that ABACUS only supports Linux; for Windows users, please consider using [WSL](https://learn.microsoft.com/en-us/windows/wsl/) or docker. ## Get ABACUS source code @@ -12,6 +12,34 @@ ABACUS source code can be obtained via one of the following choices: - Get the source code of a stable version [here](https://github.com/deepmodeling/abacus-develop/releases) - If you have connection issues accessing GitHub, please try out our official [Gitee repo](https://gitee.com/deepmodeling/abacus-develop/): e.g. `git clone https://gitee.com/deepmodeling/abacus-develop.git`. This Gitee repo is updated synchronously with GitHub. +## Update to latest release by git + +Please check the [release page](https://github.com/deepmodeling/abacus-develop/releases) for the release note of a new version. + +It is OK to download the new source code from beginning following the previous step. + +You can update your cloned git repo (from Github or Gitee) in-place with the following commands: + +```bash +git remote -v +# Check if the output contains the line below +# origin https://github.com/deepmodeling/abacus-develop.git (fetch) +# The remote name is marked as "upstream" if you clone the repo from your own fork. + +# Replace "origin" with "upstream" or the remote name corresponding to deepmodeling/abacus-develop if necessary +git fetch origin +git checkout v3.x.x # Replace the tag with the latest version, like v3.10.0 +git describe --tags # Verify if the tag has been successfully checked out +``` + +Then proceed to the [Build and Install](#build-and-install) part. If you encountered errors, try remove the `build` directory first and reconfigure. + +To use the codes under active development: + +```bash +git checkout develop +git pull +``` ## Prerequisites @@ -34,65 +62,83 @@ These requirements support the calculation of plane-wave basis in ABACUS. For LC - [CEREAL](https://uscilab.github.io/cereal/). - [ELPA](https://elpa.mpcdf.mpg.de/) >= 2017 (optional). -## Install requirements +## Install ABACUS with requirements by toolchain + +We offer a set of [toolchain](https://github.com/deepmodeling/abacus-develop/tree/develop/toolchain) +scripts to compile and install all the requirements +automatically and suitable for machine characteristic in an online or offline way. +The toolchain can be downloaded with ABACUS repo, and users can easily compile the requirements by running *toolchain_[gnu,intel,gcc-aocl,aocc-aocl].sh* and ABACUS itself by running *build_abacus_[gnu,intel,gcc-aocl,aocc-aocl].sh* script in the toolchain directory in `GNU`, `Intel-oneAPI` , `GCC-AMD AOCL` and `AMD AOCC-AOCL` toolchain. +Sometimes, ABACUS by toolchain installation may have better efficient performance due to the suitable compiled dependencies. One should read the [README in toolchain](https://github.com/deepmodeling/abacus-develop/tree/develop/toolchain/README.md) for most of the information before use, and related tutorials can be accessed via ABACUS WeChat platform. + +## Install by conda -Some of these packages can be installed with popular package management system, such as `apt` and `yum`: +Conda is a package management system with a separated environment, not requiring system privileges. +You can refer to [DeepModeling conda FAQ](https://docs.deepmodeling.com/faq/conda.html) for how to setup a conda environment. +A pre-built ABACUS binary with all requirements is available at [conda-forge](https://anaconda.org/conda-forge/abacus). It supports advanced features including Libxc, LibRI, and DeePKS. Conda will install the GPU-supported version of ABACUS if a valid GPU driver is present. Please refer to [the advanced installation guide](../advanced/install.md) for more details. ```bash -sudo apt update && sudo apt install -y libopenblas-openmp-dev liblapack-dev libscalapack-mpi-dev libelpa-dev libfftw3-dev libcereal-dev libxc-dev g++ make cmake bc git pkgconf -``` +# Install +# We recommend installing ABACUS in a new environment to avoid potential conflicts: +conda create -n abacus_env abacus "libblas=*=*mkl" mpich -c conda-forge -> Installing ELPA by apt only matches requirements on Ubuntu 22.04. For earlier linux distributions, you should build ELPA from source. +# Run +conda activate abacus_env +OMP_NUM_THREADS=1 mpirun -n 4 abacus -We recommend [Intel® oneAPI toolkit](https://software.intel.com/content/www/us/en/develop/tools/oneapi/commercial-base-hpc.html) (former Intel® Parallel Studio) as toolchain. The [Intel® oneAPI Base Toolkit](https://software.intel.com/content/www/us/en/develop/tools/oneapi/all-toolkits.html#base-kit) contains Intel® oneAPI Math Kernel Library (aka `MKL`), including `BLAS`, `LAPACK`, `ScaLAPACK` and `FFTW3`. The [Intel® oneAPI HPC Toolkit](https://software.intel.com/content/www/us/en/develop/tools/oneapi/all-toolkits.html#hpc-kit) contains Intel® MPI Library, and C++ compiler(including MPI compiler). -> Please note that building `elpa` with a different MPI library may cause conflict. -> Don't forget to [set environment variables](https://software.intel.com/content/www/us/en/develop/documentation/get-started-with-intel-oneapi-render-linux/top/configure-your-system.html) before you start! `cmake` will use Intel MKL if the environment variable `MKLROOT` is set. +# Update +conda update -n abacus_env abacus -c conda-forge +``` -Please refer to our [guide](https://github.com/deepmodeling/abacus-develop/wiki/Building-and-Running-ABACUS) on installing requirements. +> If OpenBLAS gives warning about OpenMP threads, please install conda package `"openblas=*=openmp*"` or `"libblas=*=*mkl"`. See [switching BLAS implementation in conda](https://conda-forge.org/docs/maintainer/knowledge_base.html#switching-blas-implementation). -## Install requirements by toolchain +> ABACUS supports `OpenMPI` and `MPICH` variant. Install `mpich` or `openmpi` package to switch MPI library if required. -We offer a set of [toolchain](https://github.com/deepmodeling/abacus-develop/tree/develop/toolchain) -scripts to compile and install all the requirements -automatically and suitable for machine characteristic in an online or offline way. -The toolchain can be downloaded with ABACUS repo, and users can easily compile the requirements by running *toolchain_[gnu,intel].sh* and ABACUS itself by running *build_abacus_[gnu,intel].sh* script in the toolchain directory in both `GNU` and `Intel-oneAPI` toolchain. -Sometimes, ABACUS by toolchain installation may have better efficient performance due to the suitable compiled dependencies. +For more details on building a conda package of ABACUS locally, please refer to the [conda recipe file](https://github.com/deepmodeling/abacus-develop/blob/develop/conda/meta.yaml). -Users should read the README in toolchain directory for most of the information before use, and a tutorial for using this toolchain can be accessed in [bohrium-notebook](https://nb.bohrium.dp.tech/detail/5215742477) as reference. +> Note: The [deepmodeling conda channel](https://anaconda.org/deepmodeling/abacus) offers historical versions of ABACUS. -> Notice: the toolchain is under development, please let we know if you encounter any problem in using this toolchain by raising issue or contacting us. +### Developing with conda +It is possible to build ABACUS from source based on the conda environment. -## Update to latest release by git +```bash +conda create -n abacus_env abacus -c conda-forge +conda activate abacus_env +export CMAKE_PREFIX_PATH=$CONDA_PREFIX:$CMAKE_PREFIX_PATH -Please check the [release page](https://github.com/deepmodeling/abacus-develop/releases) for the release note of a new version. +# By default OpenBLAS is used; run `conda install "blas=*=mkl" mkl_fft mkl-devel -c conda-forge` to switch implementation. +export MKLROOT=$CONDA_PREFIX # If Intel MKL is required. -It is OK to download the new source code from beginning following the previous step. +export CMAKE_PREFIX_PATH=`python -c 'import torch;print(torch.utils.cmake_prefix_path)'`:$CMAKE_PREFIX_PATH # If DEEPKS support is required; +# usually expands to `$CONDA_PREFIX/lib/python3.1/site-packages/torch/share/cmake` +``` -You can update your cloned git repo (from Github or Gitee) in-place with the following commands: +And, follow the instructions in [Build and Install](#build-and-install) part above withou manually setting paths to dependencies. +See [the advanced installation guide](../advanced/install.md) for more features. +Make sure the environment variables are set before running `cmake`. +Possible command: `cmake -B build -DENABLE_MLALGO=ON -DENABLE_LIBXC=ON -DENABLE_LIBRI=ON`. -```bash -git remote -v -# Check if the output contains the line below -# origin https://github.com/deepmodeling/abacus-develop.git (fetch) -# The remote name is marked as "upstream" if you clone the repo from your own fork. -# Replace "origin" with "upstream" or the remote name corresponding to deepmodeling/abacus-develop if necessary -git fetch origin -git checkout v3.x.x # Replace the tag with the latest version, like v3.10.0 -git describe --tags # Verify if the tag has been successfully checked out -``` +## Install ABACUS manually -Then proceed to the [Build and Install](#build-and-install) part. If you encountered errors, try remove the `build` directory first and reconfigure. +### Install requirements -To use the codes under active development: +Some of these packages can be installed with popular package management system via root permission if you have, such as `apt` and `yum`: ```bash -git checkout develop -git pull +sudo apt update && sudo apt install -y libopenblas-openmp-dev liblapack-dev libscalapack-mpi-dev libelpa-dev libfftw3-dev libcereal-dev libxc-dev g++ make cmake bc git pkgconf ``` -## Configure +> Installing ELPA by apt only matches requirements on Ubuntu 22.04. For earlier linux distributions, you should build ELPA from source. + +We recommend [Intel® oneAPI toolkit](https://software.intel.com/content/www/us/en/develop/tools/oneapi/commercial-base-hpc.html) (former Intel® Parallel Studio) as toolchain. The [Intel® oneAPI Base Toolkit](https://software.intel.com/content/www/us/en/develop/tools/oneapi/all-toolkits.html#base-kit) contains Intel® oneAPI Math Kernel Library (aka `MKL`), including `BLAS`, `LAPACK`, `ScaLAPACK` and `FFTW3`. The [Intel® oneAPI HPC Toolkit](https://software.intel.com/content/www/us/en/develop/tools/oneapi/all-toolkits.html#hpc-kit) contains Intel® MPI Library, and C++ compiler(including MPI compiler). +> Please note that building `elpa` with a different MPI library may cause conflict. +> Don't forget to [set environment variables](https://software.intel.com/content/www/us/en/develop/documentation/get-started-with-intel-oneapi-render-linux/top/configure-your-system.html) before you start! `cmake` will use Intel MKL if the environment variable `MKLROOT` is set. + +Please refer to our [guide](https://github.com/deepmodeling/abacus-develop/wiki/Building-and-Running-ABACUS) on installing requirements. + + +### Configure The basic command synopsis is: @@ -139,7 +185,7 @@ Here is an example: CXX=mpiicpx cmake -B build -DCMAKE_INSTALL_PREFIX=~/abacus -DELPA_DIR=~/elpa-2025.01.001/build -DCEREAL_INCLUDE_DIR=~/cereal/include ``` -## Build and Install +### Build and Install After configuring, build and install by: @@ -150,7 +196,9 @@ cmake --install build You can change the number after `-j` on your need: set to the number of CPU cores(`nproc`) to reduce compilation time. -## Run +## Run ABACUS + +### Load ABACUS If ABACUS is installed into a custom directory using `CMAKE_INSTALL_PREFIX`, please add it to your environment variable `PATH` to locate the correct executable. *(Note: `my-install-dir` should be changed to the location of your installed abacus:`/home/your-path/abacus/bin/`.)* @@ -165,6 +213,14 @@ If ABACUS is installed by toolchain, there will be an environment script in the source /path/to/abacus/toolchain/abacus_env.sh ``` +If ABACUS is installed by conda, please make sure the conda environment is activated before running ABACUS. + +```bash +conda activate abacus_env +``` + +### Run with Parallelism Setting + Please set OpenMP threads by setting environment variable: ```bash @@ -215,64 +271,16 @@ For online development environment, we support [GitHub Codespaces](https://githu We also support [Gitpod](https://www.gitpod.io/): [Open in Gitpod](https://gitpod.io/#https://github.com/deepmodeling/abacus-develop) -## Install by conda - -Conda is a package management system with a separated environment, not requiring system privileges. -You can refer to [DeepModeling conda FAQ](https://docs.deepmodeling.com/faq/conda.html) for how to setup a conda environment. -A pre-built ABACUS binary with all requirements is available at [conda-forge](https://anaconda.org/conda-forge/abacus). It supports advanced features including Libxc, LibRI, and DeePKS. Conda will install the GPU-supported version of ABACUS if a valid GPU driver is present. Please refer to [the advanced installation guide](../advanced/install.md) for more details. - -```bash -# Install -# We recommend installing ABACUS in a new environment to avoid potential conflicts: -conda create -n abacus_env abacus "libblas=*=*mkl" mpich -c conda-forge - -# Run -conda activate abacus_env -OMP_NUM_THREADS=1 mpirun -n 4 abacus - -# Update -conda update -n abacus_env abacus -c conda-forge -``` - -> If OpenBLAS gives warning about OpenMP threads, please install conda package `"openblas=*=openmp*"` or `"libblas=*=*mkl"`. See [switching BLAS implementation in conda](https://conda-forge.org/docs/maintainer/knowledge_base.html#switching-blas-implementation). - -> ABACUS supports `OpenMPI` and `MPICH` variant. Install `mpich` or `openmpi` package to switch MPI library if required. - -For more details on building a conda package of ABACUS locally, please refer to the [conda recipe file](https://github.com/deepmodeling/abacus-develop/blob/develop/conda/meta.yaml). - -> Note: The [deepmodeling conda channel](https://anaconda.org/deepmodeling/abacus) offers historical versions of ABACUS. - -### Developing with conda - -It is possible to build ABACUS from source based on the conda environment. - -```bash -conda create -n abacus_env abacus -c conda-forge -conda activate abacus_env -export CMAKE_PREFIX_PATH=$CONDA_PREFIX:$CMAKE_PREFIX_PATH - -# By default OpenBLAS is used; run `conda install "blas=*=mkl" mkl_fft mkl-devel -c conda-forge` to switch implementation. -export MKLROOT=$CONDA_PREFIX # If Intel MKL is required. - -export CMAKE_PREFIX_PATH=`python -c 'import torch;print(torch.utils.cmake_prefix_path)'`:$CMAKE_PREFIX_PATH # If DEEPKS support is required; -# usually expands to `$CONDA_PREFIX/lib/python3.1/site-packages/torch/share/cmake` -``` - -And, follow the instructions in [Build and Install](#build-and-install) part above withou manually setting paths to dependencies. -See [the advanced installation guide](../advanced/install.md) for more features. -Make sure the environment variables are set before running `cmake`. -Possible command: `cmake -B build -DENABLE_MLALGO=ON -DENABLE_LIBXC=ON -DENABLE_LIBRI=ON`. - ## Command line options Users can check the version of ABACUS by running the command `abacus --version`, the result will be like: ``` -ABACUS version v3.6.5 +ABACUS version v3.9.0.2 ``` Users may check the correctness of the setting of parameters in the `INPUT` file by running the command `abacus --check-input`, the result will be like: ``` - ABACUS v3.6.5 + ABACUS v3.9.0.2 Atomic-orbital Based Ab-initio Computation at UStc From e4f7337db477655a4625889790c25ba93e14539a Mon Sep 17 00:00:00 2001 From: QuantumMisaka Date: Wed, 19 Nov 2025 09:22:40 +0800 Subject: [PATCH 4/7] =?UTF-8?q?docs:=20=E4=BF=AE=E6=AD=A3CITATIONS.md?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E4=BD=9C=E8=80=85=E5=90=8D=E5=AD=97=E6=8B=BC?= =?UTF-8?q?=E5=86=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/CITATIONS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/CITATIONS.md b/docs/CITATIONS.md index 5f2508f82a..a25cb3e596 100644 --- a/docs/CITATIONS.md +++ b/docs/CITATIONS.md @@ -14,7 +14,7 @@ The following references are required to be cited when using ABACUS. Specificall *For LCAO and PW basis:* - Weiqing Zhou, Deye Zheng, Qianrui Liu, et al. ABACUS: An Electronic Structure Analysis Package for the AI Era. arXiv preprint arXiv:2501.08697, 2025. + Weiqing Zhou, Daye Zheng, Qianrui Liu, et al. ABACUS: An Electronic Structure Analysis Package for the AI Era. arXiv preprint arXiv:2501.08697, 2025. - **If Stochastic DFT is used:** From 7e04620553bfc04c62fac369d0b303780eca9416 Mon Sep 17 00:00:00 2001 From: QuantumMisaka Date: Wed, 19 Nov 2025 09:23:51 +0800 Subject: [PATCH 5/7] =?UTF-8?q?build(Dockerfile):=20=E7=A7=BB=E9=99=A4?= =?UTF-8?q?=E9=87=8D=E5=A4=8D=E7=9A=84bc=E4=BE=9D=E8=B5=96=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile.cuda | 2 +- Dockerfile.gnu | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile.cuda b/Dockerfile.cuda index 6b9b812e1f..7b42580664 100644 --- a/Dockerfile.cuda +++ b/Dockerfile.cuda @@ -3,7 +3,7 @@ FROM nvidia/cuda:12.2.0-devel-ubuntu22.04 RUN apt update && apt install -y --no-install-recommends \ libopenblas-openmp-dev liblapack-dev libscalapack-mpi-dev libfftw3-dev libcereal-dev \ libxc-dev libgtest-dev libgmock-dev libbenchmark-dev python3-numpy \ - bc cmake git g++ make bc time sudo unzip vim wget libopenmpi-dev gfortran libtool-bin + bc cmake git g++ make time sudo unzip vim wget libopenmpi-dev gfortran libtool-bin ENV GIT_SSL_NO_VERIFY=true TERM=xterm-256color \ OMPI_ALLOW_RUN_AS_ROOT=1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1 \ diff --git a/Dockerfile.gnu b/Dockerfile.gnu index 23c6b71c5e..693814a545 100644 --- a/Dockerfile.gnu +++ b/Dockerfile.gnu @@ -11,7 +11,7 @@ FROM ubuntu:22.04 RUN apt update && apt install -y --no-install-recommends \ libopenblas-openmp-dev liblapack-dev libscalapack-mpi-dev libelpa-dev libfftw3-dev libcereal-dev \ libxc-dev libgtest-dev libgmock-dev libbenchmark-dev python3-numpy \ - bc cmake git g++ make bc time sudo unzip vim wget gfortran + bc cmake git g++ make time sudo unzip vim wget gfortran # If you wish to use the LLVM compiler, replace 'g++' above with 'clang libomp-dev'. ENV GIT_SSL_NO_VERIFY=true TERM=xterm-256color \ From c16814915358dccdd119d465a8f9b00f8a50953c Mon Sep 17 00:00:00 2001 From: QuantumMisaka Date: Wed, 19 Nov 2025 09:26:40 +0800 Subject: [PATCH 6/7] =?UTF-8?q?docs(community):=20=E5=9C=A8FAQ=E4=B8=AD?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=81=94=E7=B3=BB=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/community/faq.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/community/faq.md b/docs/community/faq.md index df5db1ec5b..1888adce1f 100644 --- a/docs/community/faq.md +++ b/docs/community/faq.md @@ -12,6 +12,12 @@ Users are referred to the introduction of features of ABACUS in the [feature list](http://abacus.ustc.edu.cn/features/list.htm). +**2. How to contact the ABACUS community?** + +Users can contact the ABACUS community by join ABACUS WeChat or QQ group. One can quickly join the QQ group via group ID: 759914681 + +If users have any questions or suggestions, please feel free to contact us in group or by raising issue in GitHub repo. + ## Installation ## Setting up jobs From 1e60bb1667901e4d9e7e69338435740d965ce9ba Mon Sep 17 00:00:00 2001 From: QuantumMisaka Date: Wed, 19 Nov 2025 09:33:38 +0800 Subject: [PATCH 7/7] =?UTF-8?q?docs(quick=5Fstart):=20=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E5=AE=89=E8=A3=85=E6=8C=87=E5=8D=97=E4=B8=AD=E7=9A=84=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E9=93=BE=E6=8F=8F=E8=BF=B0=E5=92=8C=E9=93=BE=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新工具链部分的标题和描述,使其更准确反映工具链的功能。同时修正文档中的内部链接格式。 --- docs/quick_start/easy_install.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/quick_start/easy_install.md b/docs/quick_start/easy_install.md index b13871c2b1..aae9bca308 100644 --- a/docs/quick_start/easy_install.md +++ b/docs/quick_start/easy_install.md @@ -1,6 +1,6 @@ # Easy Installation -This guide helps you install ABACUS with basic features. **For DeePKS, DeePMD and Libxc support, or building with `make`, please refer to [the advanced installation guide](../advanced/install.md)** after going through this page. We recommend building ABACUS with `cmake` to avoid dependency issues. We recommend compiling ABACUS (and possibly its requirements) from the source code using the latest compiler for the best performace. You can use [toolchain](#install-requirements-by-toolchain) to install ABACUS and dependencies in a source-code compilation way with convience. You can also deploy ABACUS **without building** by [Docker](#container-deployment) or [conda](#install-by-conda). Please note that ABACUS only supports Linux; for Windows users, please consider using [WSL](https://learn.microsoft.com/en-us/windows/wsl/) or docker. +This guide helps you install ABACUS with basic features. **For DeePKS, DeePMD and Libxc support, or building with `make`, please refer to [the advanced installation guide](../advanced/install.md)** after going through this page. We recommend building ABACUS with `cmake` to avoid dependency issues. We recommend compiling ABACUS (and possibly its requirements) from the source code using the latest compiler for the best performace. You can use [toolchain](#install-by-toolchain) to install ABACUS and dependencies in a source-code compilation way with convience. You can also deploy ABACUS **without building** by [Docker](#container-deployment) or [conda](#install-by-conda). Please note that ABACUS only supports Linux; for Windows users, please consider using [WSL](https://learn.microsoft.com/en-us/windows/wsl/) or docker. ## Get ABACUS source code @@ -62,10 +62,10 @@ These requirements support the calculation of plane-wave basis in ABACUS. For LC - [CEREAL](https://uscilab.github.io/cereal/). - [ELPA](https://elpa.mpcdf.mpg.de/) >= 2017 (optional). -## Install ABACUS with requirements by toolchain +## Install by toolchain We offer a set of [toolchain](https://github.com/deepmodeling/abacus-develop/tree/develop/toolchain) -scripts to compile and install all the requirements +scripts to compile and install all the requirements and ABACUS itself automatically and suitable for machine characteristic in an online or offline way. The toolchain can be downloaded with ABACUS repo, and users can easily compile the requirements by running *toolchain_[gnu,intel,gcc-aocl,aocc-aocl].sh* and ABACUS itself by running *build_abacus_[gnu,intel,gcc-aocl,aocc-aocl].sh* script in the toolchain directory in `GNU`, `Intel-oneAPI` , `GCC-AMD AOCL` and `AMD AOCC-AOCL` toolchain. Sometimes, ABACUS by toolchain installation may have better efficient performance due to the suitable compiled dependencies. One should read the [README in toolchain](https://github.com/deepmodeling/abacus-develop/tree/develop/toolchain/README.md) for most of the information before use, and related tutorials can be accessed via ABACUS WeChat platform.