mirror of
https://github.com/nwchemgit/nwchem.git
synced 2026-07-21 06:25:21 -04:00
300 lines
8.5 KiB
YAML
300 lines
8.5 KiB
YAML
stages:
|
|
- build
|
|
- test
|
|
|
|
variables:
|
|
USE_MPI: Y
|
|
USE_NOIO: 1
|
|
USE_LIBXC: 1
|
|
NWCHEM_MODULES: "all python"
|
|
OMP_NUM_THREADS: 1
|
|
NWCHEM_LONG_PATHS: Y
|
|
GIT_CLEAN_FLAGS: -ffdx -e bin
|
|
GIT_DEPTH: 32
|
|
|
|
.linuxrhel6_template: &beforescript_linuxrhel6
|
|
before_script:
|
|
- module purge
|
|
- export LD_LIBRARY_PATH=/usr/lib/mpich/lib
|
|
- export PATH=/usr/lib/mpich/bin:/bin:/usr/bin:.
|
|
- export NWCHEM_TARGET=LINUX
|
|
|
|
.linuxubuntu_template: &beforescript_linuxubuntu
|
|
before_script:
|
|
- export NWCHEM_TARGET=LINUX
|
|
- export PATH=/home/edo/apps/mpich314_i686/bin:/usr/bin:/bin:.
|
|
- export LD_LIBRARY_PATH=/home/edo/apps/mpich314_i686/lib:/home/edo/apps/OpenBLAS.i386/lib
|
|
|
|
.compile_template: &compile_step
|
|
script:
|
|
- if [ "$(lsb_release -i|cut -c 17-)" == "CentOS" ]; then export USE_CENTOS="1" ; else export USE_CENTOS="0" ; fi
|
|
- if [ "$(lsb_release -i |cut -f 2)" == "Ubuntu" ] && [ "$(lsb_release -r|cut -c10-11)" == "16" ]; then SCALAPACK_LIB="-lscalapack-openmpi -lblacsCinit-openmpi -lblacs-openmpi -lopenblas"; fi
|
|
- env |grep CI_
|
|
- printenv PATH
|
|
- printenv LD_LIBRARY_PATH || true
|
|
- env|grep MPI || true
|
|
- which mpif90
|
|
- env|egrep BLAS
|
|
- env|egrep SCALAP || true
|
|
- env|egrep -i mkl || true
|
|
- export NWCHEM_TOP=$CI_PROJECT_DIR
|
|
- if [ "$(lsb_release -i|cut -c 17-)" == "CentOS" ]; then export NWCHEM_TOP=$HOME/$CI_PROJECT_DIR ; fi
|
|
- cd $NWCHEM_TOP/src
|
|
- rm -rf tools/ga-* ||true
|
|
- rm -rf libext/libext_utils/cmake*macos* || true
|
|
- make nwchem_config
|
|
- make -j3
|
|
- ../contrib/getmem.nwchem
|
|
only:
|
|
- master
|
|
- /^release-.*$/
|
|
- /^hotfix/.*$/
|
|
# except:
|
|
# changes:
|
|
# - ".travis.yml"
|
|
# - "travis/*"
|
|
|
|
.test_template: &test_step
|
|
variables:
|
|
GIT_CLEAN_FLAGS: -ffdx -e bin -e build -e install
|
|
script:
|
|
# - if [ "$FC" == "ifort" ]; then source /opt/intel/compilers_and_libraries_2019/linux/bin/compilervars.sh intel64 ; fi
|
|
# - if [ "$FC" == "ifx" ]; then source /opt/intel/oneapi/setvars.sh ; fi
|
|
- export NWCHEM_TOP=$CI_PROJECT_DIR
|
|
- if [ "$(lsb_release -i|cut -c 17-)" == "CentOS" ]; then export USE_CENTOS="1" ; else export USE_CENTOS="0" ; fi
|
|
- if [ "$USE_CENTOS" == "1" ]; then export NWCHEM_TOP=$HOME/$CI_PROJECT_DIR ; fi
|
|
- if [ "$USE_CENTOS" == "1" ]; then mkdir -p $NWCHEM_TOP/bin/LINUX64 ; scp -p edo@10.0.2.2:gitlab/nwchem_centos8 $NWCHEM_TOP/bin/LINUX64/nwchem ; fi
|
|
- if [ "$FC" == "ifort" ]; then export NWCHEM_EXECUTABLE=${NWCHEM_TOP}/../binaries/nwchem_intel; fi
|
|
- if [ "$FC" == "ifx" ]; then export NWCHEM_EXECUTABLE=${NWCHEM_TOP}/../binaries/nwchem_ifx; fi
|
|
- if [ "$FC" == "flang" ]; then export NWCHEM_EXECUTABLE=${NWCHEM_TOP}/../binaries/nwchem_flang; fi
|
|
- env|egrep -i mkl || true
|
|
- env|egrep LD_LIBR || true
|
|
- cd $NWCHEM_TOP/QA
|
|
- NNPROCS=1
|
|
- if [ "$(uname -s)" == "Darwin" ]; then NNPROCS=3; fi
|
|
- if [ "$(uname -s)" == "Linux" ]; then NNPROCS=3; fi
|
|
- if [ "$USE_CENTOS" == "1" ]; then NNPROCS=3; fi
|
|
- env | grep CI_ || true
|
|
- env | grep PATH || true
|
|
- which mpirun || true
|
|
- if [[ "$NWCHEM_TARGET" != "LINUX" && "$FC" != "ifx" && ( "$CI_RUNNER_TAGS" == "ubuntu_xenial" || "$CI_RUNNER_TAGS" == "ubuntu_bionic" || "$CI_RUNNER_TAGS" = "macos" ) ]]; then ./doqmtests.mpi $NNPROCS ; else ./doqmtests.mpi $NNPROCS fast ; fi
|
|
only:
|
|
- master
|
|
- /^release-.*$/
|
|
- /^hotfix/.*$/
|
|
# except:
|
|
# changes:
|
|
# - ".travis.yml"
|
|
# - "travis/*"
|
|
|
|
.intel_template: &intel_sourcing
|
|
before_script:
|
|
- export NWCHEM_TOP=$CI_PROJECT_DIR
|
|
# - source /opt/intel/compilers_and_libraries_2019/linux/bin/compilervars.sh intel64
|
|
- source /opt/intel/oneapi/setvars.sh
|
|
- export NWCHEM_EXECUTABLE=${NWCHEM_TOP}/../binaries/nwchem_intel
|
|
- export PYTHONVERSION=3.8
|
|
- export FC=ifort
|
|
|
|
.intel_template: &ifx_sourcing
|
|
before_script:
|
|
- export NWCHEM_TOP=$CI_PROJECT_DIR
|
|
- source /opt/intel/oneapi/setvars.sh
|
|
- export NWCHEM_EXECUTABLE=${NWCHEM_TOP}/../binaries/nwchem_ifx
|
|
- export PYTHONVERSION=3.8
|
|
- export FC=ifx
|
|
|
|
.flang_template: &flang_sourcing
|
|
before_script:
|
|
- source /data/opt/AMD/setenv_AOCC.sh
|
|
- export LD_LIBRARY_PATH=/home/edo/apps/ompi402.flang/lib:$LD_LIBRARY_PATH
|
|
- export PATH=/home/edo/apps/ompi402.flang/bin:$PATH
|
|
- export NWCHEM_EXECUTABLE=${NWCHEM_TOP}/../binaries/nwchem_flang
|
|
- export FC=flang
|
|
|
|
.centos8_template: ¢os8_sourcing
|
|
before_script:
|
|
- export LD_LIBRARY_PATH=/usr/lib64/mpich/lib
|
|
- export PATH=/usr/lib64/mpich/bin/:/usr/bin:/bin:.
|
|
|
|
linux64_centos8:build_gcc:
|
|
stage: build
|
|
<<: *centos8_sourcing
|
|
<<: *compile_step
|
|
variables:
|
|
BLAS_SIZE: 8
|
|
SCALAPACK_SIZE: 8
|
|
BUILD_OPENBLAS: 1
|
|
BUILD_SCALAPACK: 1
|
|
PATH: "/usr/lib64/mpich/bin/:/usr/bin:/bin:."
|
|
ARMCI_NETWORK: "MPI-TS"
|
|
after_script:
|
|
- export NWCHEM_TOP=$HOME/$CI_PROJECT_DIR
|
|
- scp -p ${NWCHEM_TOP}/bin/LINUX64/nwchem edo@10.0.2.2:gitlab/nwchem_centos8
|
|
tags:
|
|
- centos8
|
|
|
|
linux64_ubuntu:build_gcc:
|
|
stage: build
|
|
<<: *compile_step
|
|
variables:
|
|
# BLAS_LIB: "-lopenblas"
|
|
# LAPACK_LIB: "-lopenblas"
|
|
# SCALAPACK_LIB: "-lscalapack-openmpi -lopenblas"
|
|
BUILD_SCALAPACK: 1
|
|
BUILD_OPENBLAS: 1
|
|
BLAS_SIZE: 8
|
|
SCALAPACK_SIZE: 8
|
|
USE_OPENMP: 1
|
|
ARMCI_NETWORK: "MPI-PR"
|
|
tags:
|
|
- ubuntu_xenial
|
|
|
|
linux64_ubuntu:build_flang:
|
|
stage: build
|
|
<<: *flang_sourcing
|
|
<<: *compile_step
|
|
variables:
|
|
FC: flang
|
|
BUILD_SCALAPACK: 1
|
|
BUILD_OPENBLAS: 1
|
|
BLAS_SIZE: 8
|
|
SCALAPACK_SIZE: 8
|
|
ARMCI_NETWORK: "MPI-PR"
|
|
after_script:
|
|
- export NWCHEM_TOP=$CI_PROJECT_DIR
|
|
- echo "NWCHEM_TOP is " $NWCHEM_TOP
|
|
- mkdir -p ${NWCHEM_TOP}/../binaries || true
|
|
- cp ${NWCHEM_TOP}/bin/LINUX64/nwchem ${NWCHEM_TOP}/../binaries/nwchem_flang
|
|
tags:
|
|
- ubuntu_bionic
|
|
|
|
linux64_ubuntu:build_intel:
|
|
stage: build
|
|
<<: *intel_sourcing
|
|
<<: *compile_step
|
|
variables:
|
|
FC: ifort
|
|
BLAS_SIZE: 8
|
|
SCALAPACK_SIZE: 8
|
|
BUILD_SCALAPACK: 1
|
|
BUILD_OPENBLAS: 1
|
|
ARMCI_NETWORK: "MPI-PR"
|
|
USE_FPICF: "Y"
|
|
after_script:
|
|
- export NWCHEM_TOP=$CI_PROJECT_DIR
|
|
- echo "NWCHEM_TOP is " $NWCHEM_TOP
|
|
- mkdir -p ${NWCHEM_TOP}/../binaries || true
|
|
- cp ${NWCHEM_TOP}/bin/LINUX64/nwchem ${NWCHEM_TOP}/../binaries/nwchem_intel
|
|
tags:
|
|
- ubuntu_bionic
|
|
|
|
linux64_ubuntu:build_ifx:
|
|
stage: build
|
|
<<: *ifx_sourcing
|
|
<<: *compile_step
|
|
variables:
|
|
FC: ifort
|
|
BLAS_SIZE: 8
|
|
SCALAPACK_SIZE: 8
|
|
BUILD_SCALAPACK: 1
|
|
BUILD_OPENBLAS: 1
|
|
ARMCI_NETWORK: "SOCKETS"
|
|
USE_FPICF: "Y"
|
|
after_script:
|
|
- export NWCHEM_TOP=$CI_PROJECT_DIR
|
|
- echo "NWCHEM_TOP is " $NWCHEM_TOP
|
|
- mkdir -p ${NWCHEM_TOP}/../binaries || true
|
|
- cp ${NWCHEM_TOP}/bin/LINUX64/nwchem ${NWCHEM_TOP}/../binaries/nwchem_ifx
|
|
tags:
|
|
- ubuntu_bionic
|
|
|
|
linux_ubuntu:build_gcc:
|
|
stage: build
|
|
<<: *beforescript_linuxubuntu
|
|
<<: *compile_step
|
|
variables:
|
|
PATH: "/home/edo/apps/mpich314_i686/bin:/usr/bin:/bin:."
|
|
LD_LIBRARY_PATH: "/home/edo/apps/mpich314_i686/lib"
|
|
NWCHEM_MODULES: "all"
|
|
BUILD_SCALAPACK: 1
|
|
BUILD_OPENBLAS: 1
|
|
BLAS_SIZE: 4
|
|
SCALAPACK_SIZE: 4
|
|
ARMCI_NETWORK: "MPI-PR"
|
|
tags:
|
|
- ubuntu_xenial
|
|
|
|
linux_ubuntu:run_gcc:
|
|
stage: test
|
|
needs: ["linux_ubuntu:build_gcc"]
|
|
<<: *beforescript_linuxubuntu
|
|
<<: *test_step
|
|
tags:
|
|
- ubuntu_xenial
|
|
|
|
macos:build_gcc:
|
|
stage: build
|
|
<<: *compile_step
|
|
variables:
|
|
# BLASOPT: "-L/usr/local/opt/openblas/lib -lopenblas"
|
|
# LAPACK_LIB: "-L/usr/local/opt/openblas/lib -lopenblas"
|
|
# SCALAPACK_LIB: "-L/usr/local/opt/scalapack/lib/ -lscalapack -L/usr/local/opt/openblas/lib -lopenblas"
|
|
BUILD_SCALAPACK: 1
|
|
BUILD_OPENBLAS: 1
|
|
BLAS_SIZE: 8
|
|
SCALAPACK_SIZE: 8
|
|
ARMCI_NETWORK: "MPI-PR"
|
|
USE_DCOMBSSQPATCH: "Y"
|
|
PATH: "/opt/homebrew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin"
|
|
tags:
|
|
- macos
|
|
#
|
|
linux64_centos8:run_gcc:
|
|
stage: test
|
|
needs: ["linux64_centos8:build_gcc"]
|
|
<<: *centos8_sourcing
|
|
<<: *test_step
|
|
tags:
|
|
- centos8
|
|
|
|
linux64_ubuntu:run_gcc:
|
|
stage: test
|
|
needs: ["linux64_ubuntu:build_gcc"]
|
|
<<: *test_step
|
|
tags:
|
|
- ubuntu_xenial
|
|
|
|
linux64_ubuntu:run_flang:
|
|
stage: test
|
|
needs: ["linux64_ubuntu:build_flang"]
|
|
<<: *flang_sourcing
|
|
<<: *test_step
|
|
tags:
|
|
- ubuntu_bionic
|
|
|
|
linux64_ubuntu:run_intel:
|
|
stage: test
|
|
needs: ["linux64_ubuntu:build_intel"]
|
|
<<: *intel_sourcing
|
|
<<: *test_step
|
|
tags:
|
|
- ubuntu_bionic
|
|
|
|
linux64_ubuntu:run_ifx:
|
|
stage: test
|
|
needs: ["linux64_ubuntu:build_ifx"]
|
|
<<: *ifx_sourcing
|
|
<<: *test_step
|
|
tags:
|
|
- ubuntu_bionic
|
|
|
|
|
|
macos:run_gcc:
|
|
stage: test
|
|
needs: ["macos:build_gcc"]
|
|
variables:
|
|
PATH: "/opt/homebrew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin"
|
|
<<: *test_step
|
|
tags:
|
|
- macos
|