483 lines
12 KiB
YAML
483 lines
12 KiB
YAML
spack:
|
|
view: false
|
|
|
|
concretizer:
|
|
reuse: false
|
|
unify: false
|
|
|
|
config:
|
|
build_jobs: 32
|
|
concretizer: clingo
|
|
install_tree:
|
|
root: /home/software/spack
|
|
padded_length: 512
|
|
projections:
|
|
all: '{architecture}/{compiler.name}-{compiler.version}/{name}-{version}-{hash}'
|
|
|
|
packages:
|
|
all:
|
|
compiler: [gcc@11.1.0]
|
|
providers:
|
|
blas: [openblas]
|
|
mpi: [mpich]
|
|
target: [x86_64]
|
|
variants: +mpi amdgpu_target=gfx90a cuda_arch=80
|
|
tbb:
|
|
require: "intel-tbb"
|
|
binutils:
|
|
variants: +ld +gold +headers +libiberty ~nls
|
|
cuda:
|
|
version: [11.7.0]
|
|
elfutils:
|
|
variants: +bzip2 ~nls +xz
|
|
hdf5:
|
|
variants: +fortran +hl +shared
|
|
libfabric:
|
|
variants: fabrics=sockets,tcp,udp,rxm
|
|
libunwind:
|
|
variants: +pic +xz
|
|
mpich:
|
|
variants: ~wrapperrpath
|
|
ncurses:
|
|
variants: +termlib
|
|
openblas:
|
|
variants: threads=openmp
|
|
paraview:
|
|
# Don't build GUI support or GLX rendering for HPC/container deployments
|
|
require: "@5.11 ~qt+osmesa"
|
|
python:
|
|
version: [3.8.13]
|
|
trilinos:
|
|
require: +amesos +amesos2 +anasazi +aztec +boost +epetra +epetraext
|
|
+ifpack +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
|
|
+nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stratimikos
|
|
+teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
|
|
xz:
|
|
variants: +pic
|
|
mesa:
|
|
version: [21.3.8]
|
|
|
|
specs:
|
|
# CPU
|
|
- adios
|
|
- alquimia
|
|
- aml
|
|
- amrex
|
|
- arborx
|
|
- archer
|
|
- argobots
|
|
- axom
|
|
- bolt
|
|
- bricks
|
|
- butterflypack
|
|
- cabana
|
|
- caliper
|
|
- chai ~benchmarks ~tests
|
|
- charliecloud
|
|
- conduit
|
|
- datatransferkit
|
|
- dyninst
|
|
- ecp-data-vis-sdk ~cuda ~rocm
|
|
+adios2 +ascent +cinema +darshan +faodel +hdf5 +paraview +pnetcdf +sz +unifyfs +veloc +visit +vtkm +zfp
|
|
- exaworks
|
|
- flecsi
|
|
- flit
|
|
- flux-core
|
|
- fortrilinos
|
|
- gasnet
|
|
- ginkgo
|
|
- globalarrays
|
|
- gmp
|
|
- gotcha
|
|
- gptune
|
|
- h5bench
|
|
- hdf5-vol-async
|
|
- heffte +fftw
|
|
- hpctoolkit
|
|
- hpx max_cpu_count=512 networking=mpi
|
|
- hypre
|
|
- kokkos +openmp
|
|
- kokkos-kernels +openmp
|
|
- lammps
|
|
- legion
|
|
- libnrm
|
|
- libquo
|
|
- libunwind
|
|
- mercury
|
|
- metall
|
|
- mfem
|
|
- mpark-variant
|
|
- mpifileutils ~xattr
|
|
- nccmp
|
|
- nco
|
|
- netlib-scalapack
|
|
- nrm
|
|
- nvhpc
|
|
- omega-h
|
|
- openmpi
|
|
- openpmd-api
|
|
- papi
|
|
- papyrus
|
|
- parsec ~cuda
|
|
- pdt
|
|
- petsc
|
|
- phist
|
|
- plasma
|
|
- plumed
|
|
- precice
|
|
- pumi
|
|
- py-h5py +mpi
|
|
- py-h5py ~mpi
|
|
- py-jupyterhub
|
|
- py-libensemble +mpi +nlopt
|
|
- py-petsc4py
|
|
- py-warpx ^warpx dims=2
|
|
- py-warpx ^warpx dims=3
|
|
- py-warpx ^warpx dims=rz
|
|
- qthreads scheduler=distrib
|
|
- quantum-espresso
|
|
- raja
|
|
- scr
|
|
- slate ~cuda
|
|
- slepc
|
|
- stc
|
|
- strumpack ~slate
|
|
- sundials
|
|
- superlu
|
|
- superlu-dist
|
|
- swig
|
|
- swig@4.0.2-fortran
|
|
- sz3
|
|
- tasmanian
|
|
- tau +mpi +python
|
|
- trilinos@13.0.1 +belos +ifpack2 +stokhos
|
|
- turbine
|
|
- umap
|
|
- umpire
|
|
- upcxx
|
|
- variorum
|
|
- veloc
|
|
- wannier90
|
|
|
|
# CUDA
|
|
- amrex +cuda
|
|
- arborx +cuda ^kokkos@3.6.00 +wrapper
|
|
- bricks +cuda
|
|
- cabana +cuda ^kokkos@3.6.00 +wrapper +cuda_lambda +cuda
|
|
- caliper +cuda
|
|
- chai ~benchmarks ~tests +cuda ^umpire@6.0.0 ~shared
|
|
- dealii +cuda
|
|
- ecp-data-vis-sdk +cuda cuda_arch=80
|
|
+adios2 +hdf5 +paraview +vtkm +zfp
|
|
# Removing ascent because Dray is hung in CI.
|
|
# +ascent
|
|
- flecsi +cuda
|
|
- flux-core +cuda
|
|
- ginkgo +cuda
|
|
- heffte +cuda
|
|
- hpctoolkit +cuda
|
|
- hpx max_cpu_count=512 +cuda
|
|
- hypre +cuda
|
|
- kokkos +wrapper +cuda
|
|
- kokkos-kernels +cuda ^kokkos +wrapper +cuda
|
|
- magma +cuda
|
|
- mfem +cuda
|
|
- omega-h +cuda
|
|
- papi +cuda
|
|
- petsc +cuda
|
|
- py-torch +cuda
|
|
- raja +cuda
|
|
- slate +cuda
|
|
- slepc +cuda
|
|
- strumpack ~slate +cuda
|
|
- sundials +cuda
|
|
- superlu-dist +cuda
|
|
- tasmanian +cuda
|
|
- tau +mpi +cuda
|
|
- trilinos@13.4.0 +belos +ifpack2 +stokhos +cuda
|
|
- umpire ~shared +cuda
|
|
|
|
# ROCm
|
|
- amrex +rocm
|
|
- arborx +rocm
|
|
- cabana +rocm
|
|
- caliper +rocm
|
|
- chai ~benchmarks +rocm
|
|
- ecp-data-vis-sdk +rocm amdgpu_target=gfx90a
|
|
+paraview +vtkm
|
|
- gasnet +rocm
|
|
- ginkgo +rocm
|
|
- heffte +rocm
|
|
- hpctoolkit +rocm
|
|
- hpx max_cpu_count=512 +rocm
|
|
- hypre +rocm
|
|
- kokkos +rocm
|
|
- magma ~cuda +rocm
|
|
- mfem +rocm
|
|
- papi +rocm
|
|
- petsc +rocm
|
|
- raja ~openmp +rocm
|
|
- slate +rocm
|
|
- slepc +rocm ^petsc +rocm
|
|
- strumpack ~slate +rocm
|
|
- sundials +rocm
|
|
- superlu-dist +rocm
|
|
- tasmanian ~openmp +rocm
|
|
- tau +mpi +rocm
|
|
- trilinos@13.4.0 ~belos ~ifpack2 ~stokhos +rocm
|
|
- umpire +rocm
|
|
- upcxx +rocm
|
|
|
|
# CPU failures
|
|
#- geopm # /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:10: error:'__builtin_strncpy' specified bound 512 equals destination size [-Werror=stringop-truncation]
|
|
#- loki # ../include/loki/Singleton.h:158:14: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
|
|
#- paraview +qt # llvm@14
|
|
#- pruners-ninja # test/ninja_test_util.c:34: multiple definition of `a';
|
|
#- rempi # rempi_message_manager.h:53:3: error: 'string' does not name a type
|
|
|
|
# CUDA failures
|
|
#- parsec +cuda cuda_arch=80 # parsec/mca/device/cuda/transfer.c:168: multiple definition of `parsec_CUDA_d2h_max_flows';
|
|
|
|
mirrors: { "mirror": "s3://spack-binaries/develop/e4s" }
|
|
|
|
gitlab-ci:
|
|
|
|
script:
|
|
- uname -a || true
|
|
- grep -E 'vendor|model name' /proc/cpuinfo 2>/dev/null | sort -u || head -n10 /proc/cpuinfo 2>/dev/null || true
|
|
- nproc
|
|
- curl -Lfs 'https://github.com/JuliaBinaryWrappers/GNUMake_jll.jl/releases/download/GNUMake-v4.3.0+1/GNUMake.v4.3.0.x86_64-linux-gnu.tar.gz' -o gmake.tar.gz
|
|
- printf 'fef1f59e56d2d11e6d700ba22d3444b6e583c663d6883fd0a4f63ab8bd280f0f gmake.tar.gz' | sha256sum --check --strict --quiet
|
|
- tar -xzf gmake.tar.gz -C /usr bin/make 2> /dev/null
|
|
- . "./share/spack/setup-env.sh"
|
|
- spack --version
|
|
- spack arch
|
|
- cd ${SPACK_CONCRETE_ENV_DIR}
|
|
- spack env activate --without-view .
|
|
- spack config add "config:install_tree:projections:${SPACK_JOB_SPEC_PKG_NAME}:'morepadding/{architecture}/{compiler.name}-{compiler.version}/{name}-{version}-{hash}'"
|
|
- mkdir -p ${SPACK_ARTIFACTS_ROOT}/user_data
|
|
# AWS runners mount E4S public key (verification), UO runners mount public/private (signing/verification)
|
|
- if [[ -r /mnt/key/e4s.gpg ]]; then spack gpg trust /mnt/key/e4s.gpg; fi
|
|
# UO runners mount intermediate ci public key (verification), AWS runners mount public/private (signing/verification)
|
|
- if [[ -r /mnt/key/intermediate_ci_signing_key.gpg ]]; then spack gpg trust /mnt/key/intermediate_ci_signing_key.gpg; fi
|
|
- if [[ -r /mnt/key/spack_public_key.gpg ]]; then spack gpg trust /mnt/key/spack_public_key.gpg; fi
|
|
- spack --color=always --backtrace ci rebuild --tests > >(tee ${SPACK_ARTIFACTS_ROOT}/user_data/pipeline_out.txt) 2> >(tee ${SPACK_ARTIFACTS_ROOT}/user_data/pipeline_err.txt >&2)
|
|
after_script:
|
|
- cat /proc/loadavg || true
|
|
|
|
image: ecpe4s/ubuntu20.04-runner-x86_64:2023-01-01
|
|
|
|
broken-tests-packages:
|
|
- gptune
|
|
|
|
match_behavior: first
|
|
mappings:
|
|
- match:
|
|
- hipblas
|
|
- llvm
|
|
- llvm-amdgpu
|
|
- rocblas
|
|
- paraview
|
|
- py-torch
|
|
runner-attributes:
|
|
tags: [ "spack", "huge", "x86_64" ]
|
|
variables:
|
|
CI_JOB_SIZE: huge
|
|
KUBERNETES_CPU_REQUEST: 11000m
|
|
KUBERNETES_MEMORY_REQUEST: 42G
|
|
|
|
- match:
|
|
- cuda
|
|
- dealii
|
|
- dray
|
|
- dyninst
|
|
- ginkgo
|
|
- hpx
|
|
- kokkos-kernels
|
|
- kokkos-nvcc-wrapper
|
|
- magma
|
|
- mfem
|
|
- mpich
|
|
- nvhpc
|
|
- oce
|
|
- openturns
|
|
- plumed
|
|
- precice
|
|
- py-tensorflow
|
|
- qt
|
|
- raja
|
|
- rocfft
|
|
- rocsolver
|
|
- rocsparse
|
|
- rust
|
|
- slate
|
|
- trilinos
|
|
- visit
|
|
- vtk
|
|
- vtk-m
|
|
- warpx
|
|
runner-attributes:
|
|
tags: [ "spack", "large", "x86_64" ]
|
|
variables:
|
|
CI_JOB_SIZE: large
|
|
KUBERNETES_CPU_REQUEST: 8000m
|
|
KUBERNETES_MEMORY_REQUEST: 12G
|
|
|
|
- match:
|
|
- adios2
|
|
- amrex
|
|
- archer
|
|
- ascent
|
|
- axom
|
|
- binutils
|
|
- blaspp
|
|
- boost
|
|
- butterflypack
|
|
- cabana
|
|
- caliper
|
|
- camp
|
|
- chai
|
|
- conduit
|
|
- datatransferkit
|
|
- faodel
|
|
- ffmpeg
|
|
- fftw
|
|
- fortrilinos
|
|
- gperftools
|
|
- gptune
|
|
- hdf5
|
|
- heffte
|
|
- hpctoolkit
|
|
- hwloc
|
|
- hypre
|
|
- kokkos
|
|
- lammps
|
|
- lapackpp
|
|
- legion
|
|
- libzmq
|
|
- llvm-openmp-ompt
|
|
- mbedtls
|
|
- netlib-scalapack
|
|
- omega-h
|
|
- openmpi
|
|
- openpmd-api
|
|
- pagmo2
|
|
- papyrus
|
|
- parsec
|
|
- pdt
|
|
- petsc
|
|
- pumi
|
|
- py-ipython-genutils
|
|
- py-petsc4py
|
|
- py-scipy
|
|
- py-statsmodels
|
|
- py-warlock
|
|
- py-warpx
|
|
- pygmo
|
|
- slepc
|
|
- slurm
|
|
- strumpack
|
|
- sundials
|
|
- superlu-dist
|
|
- tasmanian
|
|
- tau
|
|
- upcxx
|
|
- vtk-h
|
|
- zfp
|
|
runner-attributes:
|
|
tags: [ "spack", "medium", "x86_64" ]
|
|
variables:
|
|
CI_JOB_SIZE: "medium"
|
|
KUBERNETES_CPU_REQUEST: "2000m"
|
|
KUBERNETES_MEMORY_REQUEST: "4G"
|
|
|
|
- match:
|
|
- alsa-lib
|
|
- ant
|
|
- antlr
|
|
- argobots
|
|
- automake
|
|
- berkeley-db
|
|
- bison
|
|
- blt
|
|
- cmake
|
|
- curl
|
|
- darshan-util
|
|
- diffutils
|
|
- exmcutils
|
|
- expat
|
|
- flit
|
|
- freetype
|
|
- gdbm
|
|
- gotcha
|
|
- hpcviewer
|
|
- jansson
|
|
- json-c
|
|
- libbsd
|
|
- libevent
|
|
- libjpeg-turbo
|
|
- libnrm
|
|
- libpng
|
|
- libunistring
|
|
- lua-luaposix
|
|
- m4
|
|
- mpfr
|
|
- ncurses
|
|
- openblas
|
|
- openjdk
|
|
- papi
|
|
- parallel-netcdf
|
|
- pcre2
|
|
- perl-data-dumper
|
|
- pkgconf
|
|
- py-alembic
|
|
- py-idna
|
|
- py-testpath
|
|
- qhull
|
|
- snappy
|
|
- swig
|
|
- tar
|
|
- tcl
|
|
- texinfo
|
|
- unzip
|
|
- util-linux-uuid
|
|
- util-macros
|
|
- yaml-cpp
|
|
- zlib
|
|
- zstd
|
|
runner-attributes:
|
|
tags: [ "spack", "small", "x86_64" ]
|
|
variables:
|
|
CI_JOB_SIZE: "small"
|
|
KUBERNETES_CPU_REQUEST: "500m"
|
|
KUBERNETES_MEMORY_REQUEST: "500M"
|
|
|
|
- match: ['os=ubuntu20.04']
|
|
runner-attributes:
|
|
tags: ["spack", "x86_64"]
|
|
variables:
|
|
CI_JOB_SIZE: "default"
|
|
|
|
broken-specs-url: "s3://spack-binaries/broken-specs"
|
|
|
|
service-job-attributes:
|
|
before_script:
|
|
- . "./share/spack/setup-env.sh"
|
|
- spack --version
|
|
image: ecpe4s/ubuntu20.04-runner-x86_64:2023-01-01
|
|
tags: ["spack", "public", "x86_64"]
|
|
|
|
signing-job-attributes:
|
|
image: { "name": "ghcr.io/spack/notary:latest", "entrypoint": [""] }
|
|
tags: ["spack", "aws"]
|
|
script:
|
|
- aws s3 sync --exclude "*" --include "*spec.json*" ${SPACK_REMOTE_MIRROR_OVERRIDE}/build_cache /tmp
|
|
- /sign.sh
|
|
- aws s3 sync --exclude "*" --include "*spec.json.sig*" /tmp ${SPACK_REMOTE_MIRROR_OVERRIDE}/build_cache
|
|
|
|
cdash:
|
|
build-group: E4S
|
|
url: https://cdash.spack.io
|
|
project: Spack Testing
|
|
site: Cloud Gitlab Infrastructure
|