From a85a7e2185ce15537a91cebc48d1693f36e4b4d7 Mon Sep 17 00:00:00 2001 From: limingyang <1016071721@qq.com> Date: Tue, 3 Jun 2025 20:17:24 +0800 Subject: [PATCH] Add chaste-2019.1. --- package/amara/1.2.0.2/install.sh | 16 ++++ package/boost/1.70.0/clang/install.sh | 10 ++ package/boost/1.88.0/clang/install.sh | 10 ++ package/sundials/5.8.0/install.sh | 15 +++ package/xsd/4.0.0/install.sh | 20 ++++ .../chaste/2019.1/data.chaste.arm.cpu.config | 93 +++++++++++++++++++ 6 files changed, 164 insertions(+) create mode 100755 package/amara/1.2.0.2/install.sh create mode 100755 package/boost/1.70.0/clang/install.sh create mode 100755 package/boost/1.88.0/clang/install.sh create mode 100755 package/sundials/5.8.0/install.sh create mode 100755 package/xsd/4.0.0/install.sh create mode 100644 templates/chaste/2019.1/data.chaste.arm.cpu.config diff --git a/package/amara/1.2.0.2/install.sh b/package/amara/1.2.0.2/install.sh new file mode 100755 index 0000000..e0333de --- /dev/null +++ b/package/amara/1.2.0.2/install.sh @@ -0,0 +1,16 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u https://repo.huaweicloud.com/repository/pypi/packages/af/0e/e81dfe4b4fb24023207d86e4d4ff418b0e83927f2155ed3552b0e3196846/Amara-1.2.0.2.tar.gz#sha256=0814dae65bfeb3b309d65d7efb01e2e7a8c30611e7232f839c390816edac27cb -f Amara-1.2.0.2.tar.gz +. ${DOWNLOAD_TOOL} -u https://pypi.tuna.tsinghua.edu.cn/packages/0e/ae/3c5b4fffb12be7c3a80c99475853349e1cf8477f99051921ea06fbf5e3b9/4Suite-XML-1.0.2.tar.gz#sha256=f0c24132eb2567e64b33568abff29a780a2f0236154074d0b8f5262ce89d8c03 -f 4Suite-XML-1.0.2.tar.gz +cd ${JARVIS_TMP} +rm -rf Amara-1.2.0.2 4Suite-XML-1.0.2 +tar -xvzf ${JARVIS_DOWNLOAD}/Amara-1.2.0.2.tar.gz +tar -xvzf ${JARVIS_DOWNLOAD}/4Suite-XML-1.0.2.tar.gz + +cd 4Suite-XML-1.0.2 +python setup.py install +cd .. + +cd Amara-1.2.0.2 +python setup.py install diff --git a/package/boost/1.70.0/clang/install.sh b/package/boost/1.70.0/clang/install.sh new file mode 100755 index 0000000..2fbfc3f --- /dev/null +++ b/package/boost/1.70.0/clang/install.sh @@ -0,0 +1,10 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u https://archives.boost.io/release/1.70.0/source/boost_1_70_0.tar.bz2 +cd ${JARVIS_TMP} +tar -xvf ${JARVIS_DOWNLOAD}/boost_1_70_0.tar.bz2 +cd boost_1_70_0 +sed -i '60s/.*/#ifdef PTHREAD_STACK_MIN/' ./boost/thread/pthread/thread_data.hpp +./bootstrap.sh --with-toolset=clang --with-libraries=system,filesystem,serialization,program_options +./b2 cxxflags="-std=c++14 -stdlib=libc++ -Wno-error=enum-constexpr-conversion" linkflags="-std=c++14 -stdlib=libc++ -Wno-error=enum-constexpr-conversion" install --prefix=$1 diff --git a/package/boost/1.88.0/clang/install.sh b/package/boost/1.88.0/clang/install.sh new file mode 100755 index 0000000..63343e1 --- /dev/null +++ b/package/boost/1.88.0/clang/install.sh @@ -0,0 +1,10 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u https://archives.boost.io/release/1.88.0/source/boost_1_88_0.tar.bz2 +cd ${JARVIS_TMP} +tar -xvf ${JARVIS_DOWNLOAD}/boost_1_88_0.tar.bz2 +cd boost_1_88_0 +sed -i '60s/.*/#ifdef PTHREAD_STACK_MIN/' ./boost/thread/pthread/thread_data.hpp +./bootstrap.sh --with-toolset=clang --with-libraries=system,serialization,program_options +./b2 --with-filesystem toolset=clang cxxflags="-std=c++17 -stdlib=libc++ -Wno-error=enum-constexpr-conversion" linkflags="-std=c++17 -stdlib=libc++ -Wno-error=enum-constexpr-conversion" install --prefix=$1 diff --git a/package/sundials/5.8.0/install.sh b/package/sundials/5.8.0/install.sh new file mode 100755 index 0000000..1f0e191 --- /dev/null +++ b/package/sundials/5.8.0/install.sh @@ -0,0 +1,15 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u https://github.com/LLNL/sundials/archive/refs/tags/v5.8.0.tar.gz -f sundials-5.8.0.tar.gz +cd ${JARVIS_TMP} +rm -rf sundials-5.8.0 +tar -xvf ${JARVIS_DOWNLOAD}/sundials-5.8.0.tar.gz +cd sundials-5.8.0 +mkdir build && cd build +echo $1 +cmake -DCMAKE_INSTALL_PREFIX=$1 \ + -DBUILD_SHARED_LIBS=ON \ + -DCMAKE_BUILD_TYPE=Release \ + -DEXAMPLES_ENABLE=OFF .. +make -j && make install diff --git a/package/xsd/4.0.0/install.sh b/package/xsd/4.0.0/install.sh new file mode 100755 index 0000000..beb9e84 --- /dev/null +++ b/package/xsd/4.0.0/install.sh @@ -0,0 +1,20 @@ +#!/bin/bash +set -x +set -e +. ${DOWNLOAD_TOOL} -u http://www.codesynthesis.com/download/xsd/4.0/xsd-4.0.0+dep.tar.bz2 +cd ${JARVIS_TMP} +rm -rf xsd-4.0.0+dep +tar -xvf ${JARVIS_DOWNLOAD}/xsd-4.0.0+dep.tar.bz2 +cd xsd-4.0.0+dep + +sed -i "11s|.*|#include |" libxsd-frontend/xsd-frontend/semantic-graph/elements.cxx +sed -i "298s|.*| std::wstringstream wss;\n wss << path.string().c_str();\n return os << wss.str();|" libxsd-frontend/xsd-frontend/semantic-graph/elements.cxx +sed -i '28s|throw (std::bad_alloc)|throw()|' libcutl/cutl/shared-ptr/base.cxx +sed -i '34s|throw (std::bad_alloc)|throw()|; 64s|throw (std::bad_alloc)|throw()|' libcutl/cutl/shared-ptr/base.hxx +sed -i '62s|throw (std::bad_alloc)|throw()|' libcutl/cutl/shared-ptr/base.ixx + +rm -f /usr/lib64/libxerces-c.so +ln -s ${XERCES_PATH}/lib/libxerces-c.so /usr/lib64/libxerces-c.so +make -j CFLAGS="-I${XERCES_PATH}/include -L${XERCES_PATH}/lib -lxerces-c" \ + CXXFLAGS="-std=c++14 -I${XERCES_PATH}/include -L${XERCES_PATH}/lib -lxerces-c" +make install_prefix=$1 install diff --git a/templates/chaste/2019.1/data.chaste.arm.cpu.config b/templates/chaste/2019.1/data.chaste.arm.cpu.config new file mode 100644 index 0000000..777b5b6 --- /dev/null +++ b/templates/chaste/2019.1/data.chaste.arm.cpu.config @@ -0,0 +1,93 @@ +[SERVER] +11.11.11.11 + +[DOWNLOAD] +chaste/2019.1 $JARVIS_PROXY/Chaste/Chaste/archive/refs/tags/release_2019.1.tar.gz Chaste-release_2019.1.tar.gz + +[DEPENDENCY] +set -x +set -e +module purge +module use ./software/modulefiles +./jarvis -install bisheng/4.1.0 com +./jarvis -install python2/2.7.16 com + +module load bisheng/4.1.0 +export CC=clang CXX=clang++ FC=flang + +./jarvis -install kml/2.4.0/bisheng clang +./jarvis -install hmpi/2.4.2 clang +./jarvis -install boost/1.70.0/clang clang +./jarvis -install sundials/5.8.0 clang +./jarvis -install xerces/3.3.0 clang +./jarvis -install vtk/9.4.1 clang + +module load xerces/3.3.0 +./jarvis -install xsd/4.0.0 clang + +module load hmpi/2.4.2 +export CC=mpicc CXX=mpicxx FC=mpifort +./jarvis -install petsc/3.19.6 clang+mpi + +module load python2/2.7.16 +./jarvis -install amara/1.2.0.2/ clang +yum install libxml2-devel libxslt-devel -y +pip install rdflib lxml + +[ENV] +module purge +module use ./software/modulefiles +module load bisheng/4.1.0 +module load kml-bisheng/2.4.0 +module load hmpi/2.4.2 +module load boost-clang/1.70.0 +module load petsc/3.19.6 +module load sundials/5.8.0 +module load xerces/3.3.0 +module load xsd/4.0.0 +module load vtk/9.4.1 +module load python2/2.7.16 + +[APP] +app_name = chaste +build_dir = ${JARVIS_ROOT} +binary_dir = ${JARVIS_ROOT}/cp2k-7.1.0/exe/Linux-arm-clang/ +case_dir = ${JARVIS_ROOT}/cp2k-7.1.0/benchmarks/QS/ + +[BUILD] +rm -rf Chaste-release_2019.1 +tar -zxvf $JARVIS_DOWNLOAD/Chaste-release_2019.1.tar.gz +cd Chaste-release_2019.1 +sed -i '452s|^|#|' CMakeLists.txt +sed -i -e 's/VecLockPush/VecLockReadPush/g' \ + -e 's/VecLockPop/VecLockReadPop/g' \ + ./global/test/TestDistributedVector.hpp ./linalg/test/TestPetscVecTools.hpp +sed -i '6s|\-Werror||g' ./cmake/Modules/ChasteCompilerFlags.cmake +mkdir chaste_build chaste_install +cd chaste_build +cmake .. -DCMAKE_INSTALL_PREFIX=$(realpath ./chaste_install) \ + -DPYTHON_EXECUTABLE=${PYTHON2_PATH}/bin/python2 \ + -DBoost_INCLUDE_DIR=${BOOST_CLANG_PATH}/include \ + -DPETSC_DIR=${PETSC_PATH} \ + -DPETSC_INCLUDES=${PETSC_PATH}/include \ + -DPETSC_LIBRARIES=${PETSC_PATH}/lib \ + -DPARMETIS_LIBRARY=${PETSC_PATH}/lib/libparmetis.so \ + -DSUNDIALS_INCLUDE_DIRS=${SUNDIALS_PATH}/include \ + -DSUNDIALS_LIBRARIES=${SUNDIALS_PATH}/lib64 \ + -DSUNDIALS_sundials_cvode_LIBRARY=${SUNDIALS_PATH}/lib64/libsundials_cvode.so \ + -DSUNDIALS_sundials_nvecserial_LIBRARY=${SUNDIALS_PATH}/lib64/libsundials_nvecserial.so \ + -DChaste_SUNDIALS_VERSION=50800 -DSUNDIALS_VERSION_MAJOR=5 -DSUNDIALS_VERSION_MINOR=8 \ + -DXERCESC_LIBRARY=${XERCES_PATH}/lib/libxerces-c.so \ + -DCMAKE_C_FLAGS="-Wno-deprecated-declarations -Wno-unused-but-set-variable -Wno-unused-command-line-argument -lopenblas -I${VTK_PATH}/include/vtk-9.4 -L${BOOST_CLANG_PATH}/lib -lboost_serialization -lboost_system -lboost_filesystem" \ + -DCMAKE_CXX_FLAGS="-std=c++14 -stdlib=libc++ -Wno-deprecated-declarations -Wno-unused-but-set-variable -Wno-unused-command-line-argument -lopenblas -I${VTK_PATH}/include/vtk-9.4 -L${BOOST_CLANG_PATH}/lib -lboost_serialization -lboost_system -lboost_filesystem" + -DX11_X11_INCLUDE_PATH=/usr/include/X11/ -DX11_X11_LIB=/usr/lib64 + +make VERBOSE=1 -j Continuous + +[CLEAN] +make -j 128 ARCH=Linux-arm-clang VERSION=psmp clean + +[RUN] +run = numactl -C 0-63 mpirun --allow-run-as-root -np 64 -x OMP_NUM_THREADS=1 +binary = cp2k.psmp H2O-256.inp +nodes = 1 -- Gitee