E4S Distribution via spack.yaml

23.05

E4S 23.05 is based on Spack branch e4s-23.05.

CUDA x86-64
spack:
  view: false

  concretizer:
    reuse: false
    unify: false

  packages:
    all:
      require: '%gcc@11.1.0'
      providers:
        blas: [openblas]
        mpi: [mpich]
      target: [x86_64]
      variants: +mpi
    binutils:
      variants: +ld +gold +headers +libiberty ~nls
    elfutils:
      variants: +bzip2 ~nls +xz
    hdf5:
      variants: +fortran +hl +shared
    libfabric:
      variants: fabrics=sockets,tcp,udp,rxm
    libunwind:
      variants: +pic +xz
    openblas:
      variants: threads=openmp
    trilinos:
      variants: +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
        +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
        +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
        +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    xz:
      variants: +pic
    mesa:
      version: [21.3.8]
    mpich:
      require: '@4.1.1 ~wrapperrpath ~hwloc'
    ncurses:
      require: '@6.3 +termlib'
    python:
      require: '@3.7.15'
    tbb:
      require: intel-tbb
    cuda:
      require: '@11.8.0'
    boost:
      version: [1.79.0]
      variants: +atomic +chrono +container +date_time +exception +filesystem +graph
        +iostreams +locale +log +math +mpi +multithreaded +program_options +random
        +regex +serialization +shared +signals +stacktrace +system +test +thread +timer
        cxxstd=17 visibility=global
    libffi:
      require: "@3.4.4"
    vtk-m:
      require: "+examples"

  compilers:
  - compiler:
      spec: gcc@11.1.0
      paths:
        cc: /usr/bin/gcc
        cxx: /usr/bin/g++
        f77: /usr/bin/gfortran
        fc: /usr/bin/gfortran
      flags: {}
      operating_system: ubuntu20.04
      target: x86_64
      modules: []
      environment: {}
      extra_rpaths: []

  modules:
    prefix_inspections:
      lib: [LD_LIBRARY_PATH]
      lib64: [LD_LIBRARY_PATH]
    default:
      'enable:': [lmod]
      lmod:
        core_compilers: [gcc@11.1.0]
        verbose: true
        hash_length: 4
        hierarchy: [mpi]
        projections: {}
        core_specs: []
        exclude_implicits: false
        include:
        - autoconf
        - automake
        - cmake
        - mpich
        - ninja
        all:
          autoload: direct
          environment:
            set:
              '{name}_ROOT': '{PREFIX}'
          suffixes:
            +cuda cuda_arch=70: cuda70
            +cuda cuda_arch=80: cuda80
            +cuda cuda_arch=90: cuda90
            +rocm amdgpu_target=gfx908: gfx908
            +rocm amdgpu_target=gfx90a: gfx90a
            +openmp: openmp
        cabana:
          suffixes:
            +rocm: rocm
            ^kokkos +rocm amdgpu_target=gfx90a: gfx90a
            ^kokkos +rocm amdgpu_target=gfx908: gfx908
            ^kokkos +cuda cuda_arch=70: cuda70
            ^kokkos +cuda cuda_arch=80: cuda80
            ^kokkos +cuda cuda_arch=90: cuda90
        tau:
          suffixes:
            +rocm: rocm
            +cuda: cuda
        hpctoolkit:
          suffixes:
            +rocm: rocm
            +cuda: cuda
        bricks:
          suffixes:
            +rocm: rocm
            +cuda: cuda
        flux-core:
          suffixes:
            +rocm: rocm
            +cuda: cuda
        papi:
          suffixes:
            +rocm: rocm
            +cuda: cuda
        adios2:
          suffixes:
            ~cuda+hdf5: hdf5
            ~rocm+hdf5: hdf5
        py-warpx:
          suffixes:
            ^warpx dims=2: dims2
            ^warpx dims=3: dims3
            ^warpx dims=rz: dimsRZ
        warpx:
          suffixes:
            dims=2: dims2
            dims=3: dims3
            dims=rz: dimsRZ

  specs:
  # CPU
  - adios
  - alquimia
  - aml
  - amrex
  - arborx
  - archer # included in llvm +libomp_tsan
  - argobots
  - axom
  - bolt
  - boost
  - bricks ~cuda
  - 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                                                                                       # adios2~cuda, ascent~cuda, darshan-runtime, darshan-util, faodel, hdf5, libcatalyst, parallel-netcdf, paraview~cuda, py-cinemasci, sz, unifyfs, veloc, visit, vtk-m, zfp
  - exaworks
  - flecsi@2.1.0
  - flit
  - flux-core
  - fortrilinos
  - gasnet
  - ginkgo
  - globalarrays
  - gmp
  - gotcha
  - gptune ~mpispawn
  - h5bench
  - hdf5-vol-async
  - hdf5-vol-cache
  - hdf5-vol-log
  - heffte +fftw
  - hpctoolkit
  - hpx networking=mpi
  - hypre
  - kokkos +openmp
  - kokkos-kernels +openmp
  - lammps
  - lbann
  - legion
  - libnrm
  - libpressio +bitgrooming +bzip2 ~cuda ~cusz +fpzip +hdf5 +libdistributed +lua +openmp +python +sz +sz3 +unix +zfp
  - libquo
  - libunwind
  - loki
  - mercury
  - metall
  - mfem
  - mgard +serial +openmp +timing +unstructured ~cuda
  - mpark-variant
  - mpifileutils ~xattr
  - nccmp
  - nco
  - netlib-scalapack
  - nrm
  - nvhpc
  - omega-h
  - openfoam
  - openmpi
  - openpmd-api
  - papi
  - papyrus
  - parsec ~cuda
  - pdt
  - petsc
  - phist
  - plasma
  - plumed
  - precice
  - pumi
  - py-h5py
  - py-jupyterhub
  - py-libensemble
  - py-petsc4py
  - py-warpx ^warpx dims=2
  - py-warpx ^warpx dims=3
  - py-warpx ^warpx dims=rz
  - qthreads scheduler=distrib
  - quantum-espresso
  - raja
  - rempi
  - scr
  - slate ~cuda
  - slepc
  - stc
  - strumpack ~slate
  - sundials
  - superlu
  - superlu-dist
  - swig@4.0.2-fortran
  - sz3
  - tasmanian
  - tau +mpi +python
  - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
  - turbine
  - umap
  - umpire
  - upcxx
  - variorum
  - wannier90
  - xyce +mpi +shared +pymi +pymi_static_tpls ^trilinos~shylu
  # INCLUDED IN ECP DAV CPU
  # - adios2
  # - ascent
  # - darshan-runtime
  # - darshan-util
  # - faodel
  # - hdf5
  # - libcatalyst
  # - parallel-netcdf
  # - paraview
  # - py-cinemasci
  # - sz
  # - unifyfs
  # - veloc
  # - visit
  # - vtk-m
  # - zfp
  # --
  # - dealii        # dealii: https://github.com/spack/spack/issues/38789
  # - geopm         # geopm: https://github.com/spack/spack/issues/38795
  # - pruners-ninja # pruners-ninja: https://github.com/spack/spack/issues/32112

  # CUDA NOARCH
  - bricks +cuda
  - cabana +cuda ^kokkos +wrapper +cuda_lambda +cuda cuda_arch=80
  - flux-core +cuda
  - hpctoolkit +cuda
  - papi +cuda
  - tau +mpi +cuda
  # --
  # - legion +cuda  # legion: needs NVIDIA driver

  # CUDA 80
  - amrex +cuda cuda_arch=80
  - arborx +cuda cuda_arch=80 ^kokkos +wrapper
  - caliper +cuda cuda_arch=80
  - chai ~benchmarks ~tests +cuda cuda_arch=80 ^umpire ~shared
  - cusz +cuda cuda_arch=80
  - dealii +cuda cuda_arch=80
  - ecp-data-vis-sdk ~rocm +adios2 ~ascent +hdf5 +vtkm +zfp +paraview +cuda cuda_arch=80 # +ascent fails because fides fetch error
  - flecsi@2.1.0 +cuda cuda_arch=80
  - ginkgo +cuda cuda_arch=80
  - heffte +cuda cuda_arch=80
  - hpx +cuda cuda_arch=80
  - hypre +cuda cuda_arch=80
  - kokkos +wrapper +cuda cuda_arch=80
  - kokkos-kernels +cuda cuda_arch=80 ^kokkos +wrapper +cuda cuda_arch=80
  - magma +cuda cuda_arch=80
  - mfem +cuda cuda_arch=80
  - mgard +serial +openmp +timing +unstructured +cuda cuda_arch=80
  - omega-h +cuda cuda_arch=80
  - parsec +cuda cuda_arch=80
  - petsc +cuda cuda_arch=80
  - py-torch +cuda cuda_arch=80
  - raja +cuda cuda_arch=80
  - slate +cuda cuda_arch=80
  - slepc +cuda cuda_arch=80
  - strumpack ~slate +cuda cuda_arch=80
  - sundials +cuda cuda_arch=80
  - superlu-dist +cuda cuda_arch=80
  - tasmanian +cuda cuda_arch=80
  - "trilinos@13.4.1: +cuda cuda_arch=80"
  - umpire ~shared +cuda cuda_arch=80
  # INCLUDED IN ECP DAV CUDA
  # - adios2 +cuda cuda_arch=80
  # - ascent +cuda cuda_arch=80
  # - paraview +cuda cuda_arch=80
  # - vtk-m +cuda cuda_arch=80
  # - zfp +cuda cuda_arch=80
  # --
  # - axom +cuda cuda_arch=80       # axom: https://github.com/spack/spack/issues/29520
  # - lammps +cuda cuda_arch=80     # lammps: needs NVIDIA driver
  # - lbann +cuda cuda_arch=80      # lbann: https://github.com/spack/spack/issues/38788
  # - libpressio +bitgrooming +bzip2 +fpzip +hdf5 +libdistributed +lua +openmp +python +sz +sz3 +unix +zfp +json +remote +netcdf +cusz +mgard +cuda cuda_arch=80 ^cusz +cuda cuda_arch=80 # libpressio: https://github.com/spack/spack/pull/34222#issuecomment-1430459365
  # - upcxx +cuda cuda_arch=80      # upcxx: needs NVIDIA driver

  # CUDA 90
  - arborx +cuda cuda_arch=90 ^kokkos +wrapper
  - caliper +cuda cuda_arch=90
  - chai ~benchmarks ~tests +cuda cuda_arch=90 ^umpire ~shared
  - cusz +cuda cuda_arch=90
  - dealii +cuda cuda_arch=90
  - flecsi@2.1.0 +cuda cuda_arch=90
  - ginkgo +cuda cuda_arch=90
  - heffte +cuda cuda_arch=90
  - hpx +cuda cuda_arch=90
  - hypre +cuda cuda_arch=90
  - kokkos +wrapper +cuda cuda_arch=90
  - magma +cuda cuda_arch=90
  - mfem +cuda cuda_arch=90
  - omega-h +cuda cuda_arch=90
  - parsec +cuda cuda_arch=90
  - petsc +cuda cuda_arch=90
  - py-torch +cuda cuda_arch=90
  - raja +cuda cuda_arch=90
  - slate +cuda cuda_arch=90
  - slepc +cuda cuda_arch=90
  - strumpack ~slate +cuda cuda_arch=90
  - sundials +cuda cuda_arch=90
  - superlu-dist +cuda cuda_arch=90
  - tasmanian +cuda cuda_arch=90
  - "trilinos@13.4.1: +cuda cuda_arch=90"
  - umpire ~shared +cuda cuda_arch=90
  # INCLUDED IN ECP DAV CUDA
  # - adios2 +cuda cuda_arch=90
  # - ascent +cuda cuda_arch=90
  # - paraview +cuda cuda_arch=90
  # - vtk-m +cuda cuda_arch=90
  # - zfp +cuda cuda_arch=90
  # --
  # - amrex +cuda cuda_arch=90      # amrex: https://github.com/spack/spack/issues/38556
  # - axom +cuda cuda_arch=90       # axom: https://github.com/spack/spack/issues/29520
  # - ecp-data-vis-sdk ~rocm +adios2 +ascent +hdf5 +vtkm +zfp +paraview +cuda cuda_arch=90 # vtk-m: https://github.com/spack/spack/issues/38560
  # - kokkos-kernels +cuda cuda_arch=90 ^kokkos +wrapper +cuda cuda_arch=90 # kokkos@3.7.00 cuda_arch=90: CMake Error at cmake/kokkos_arch.cmake:776 (MESSAGE): CUDA enabled but no NVIDIA GPU architecture currently enabled and auto-detection failed.  Please give one -DKokkos_ARCH_{..}=ON' to enable an NVIDIA GPU architecture.
  # - lammps +cuda cuda_arch=90     # lammps: needs NVIDIA driver
  # - lbann +cuda cuda_arch=90      # lbann: https://github.com/spack/spack/issues/38788
  # - libpressio +bitgrooming +bzip2 +fpzip +hdf5 +libdistributed +lua +openmp +python +sz +sz3 +unix +zfp +json +remote +netcdf +cusz +mgard +cuda cuda_arch=90 ^cusz +cuda cuda_arch=90 # libpressio: https://github.com/spack/spack/pull/34222#issuecomment-1430459365
  # - mgard +serial +openmp +timing +unstructured +cuda cuda_arch=90 # mgard: https://github.com/spack/spack/issues/38558
  # - upcxx +cuda cuda_arch=90      # upcxx: needs NVIDIA driver

23.02

E4S 23.02 is based on Spack branch e4s-23.02.

CUDA x86-64
spack:
  view: false

  concretizer:
    reuse: false
    unify: false

  packages:
    all:
      require: "%gcc@11.1.0"
      providers:
        blas: [openblas]
        mpi: [mpich]
      target: [x86_64]
      variants: +mpi
    binutils:
      variants: +ld +gold +headers +libiberty ~nls
    elfutils:
      variants: +bzip2 ~nls +xz
    hdf5:
      variants: +fortran +hl +shared
    libfabric:
      variants: fabrics=sockets,tcp,udp,rxm
    libunwind:
      variants: +pic +xz
    openblas:
      variants: threads=openmp
    trilinos:
      variants: +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
        +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
        +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
        +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    xz:
      variants: +pic
    mesa:
      version: [21.3.8]
    mpich:
      require: '@4.1 ~wrapperrpath ~hwloc'
    ncurses:
      require: '@6.3 +termlib'
    python:
      require: '@3.7.15'
    tbb:
      require: intel-tbb
    cuda:
     require: "@11.8.0"

  compilers:
  - compiler:
      spec: gcc@11.1.0
      paths:
        cc: /usr/bin/gcc
        cxx: /usr/bin/g++
        f77: /usr/bin/gfortran
        fc: /usr/bin/gfortran
      flags: {}
      operating_system: ubuntu20.04
      target: x86_64
      modules: []
      environment: {}
      extra_rpaths: []

  modules:
    prefix_inspections:
      lib: [LD_LIBRARY_PATH]
      lib64: [LD_LIBRARY_PATH]
    default:
      'enable:': [lmod]
      lmod:
        core_compilers: [gcc@11.1.0]
        verbose: true
        hash_length: 0
        hierarchy: [mpi]
        projections: {}
        core_specs: []
        exclude_implicits: true
        include:
        - autoconf
        - automake
        - cmake
        - mpich
        all:
          autoload: direct
          environment:
            set:
              ${PACKAGE}_ROOT: ${PREFIX}
          suffixes:
            +cuda cuda_arch=70: cuda70
            +cuda cuda_arch=80: cuda80
            +cuda cuda_arch=90: cuda90
            +openmp: openmp
        cabana:
          suffixes:
            ^kokkos +cuda cuda_arch=70: cuda70
            ^kokkos +cuda cuda_arch=80: cuda80
            ^kokkos +cuda cuda_arch=90: cuda90
        tau:
          suffixes:
            +cuda: cuda
        hpctoolkit:
          suffixes:
            +cuda: cuda
        bricks:
          suffixes:
            +cuda: cuda
        flux-core:
          suffixes:
            +cuda: cuda
        papi:
          suffixes:
            +cuda: cuda
        mpich:
          suffixes:
            ^xz@5.2.6: xz5.2.6
        adios2:
          suffixes:
            ~cuda+hdf5: hdf5
        py-warpx:
          suffixes:
            ^warpx dims=2: dims2
            ^warpx dims=3: dims3
            ^warpx dims=rz: dimsRZ

  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 # adios2~cuda, ascent~cuda, darshan-runtime, darshan-util, faodel, hdf5, libcatalyst, parallel-netcdf, paraview~cuda, py-cinemasci, sz, unifyfs, veloc, visit, vtk-m, zfp
  - exaworks
  - flecsi ^pfunit max_array_rank=5
  - flit
  - flux-core
  - fortrilinos
  - gasnet
  - ginkgo
  - globalarrays
  - gmp
  - gotcha
  - gptune ~mpispawn
  - h5bench
  - hdf5-vol-async
  - heffte +fftw
  - hpctoolkit
  - hpx networking=mpi
  - hypre
  - kokkos +openmp
  - kokkos-kernels +openmp
  - lammps
  - legion
  - libnrm
  - libpressio +bitgrooming +bzip2 ~cuda ~cusz +fpzip +hdf5 +libdistributed +lua +openmp +python +sz +sz3 +unix +zfp
  - 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-jupyterhub
  - py-libensemble
  - 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
  - tasmanian
  - tau +mpi +python
  - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
    +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
    +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
    +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
  - turbine
  - umap
  - umpire
  - upcxx
  - variorum
  - wannier90

  # CUDA NOARCH
  - bricks +cuda
  - flux-core +cuda
  - hpctoolkit +cuda
  - papi +cuda
  - tau +mpi +cuda

  # CUDA 80  
  - amrex +cuda cuda_arch=80
  - arborx +cuda cuda_arch=80 ^kokkos +wrapper
  - ascent +cuda cuda_arch=80
  - cabana +cuda ^kokkos +wrapper +cuda_lambda +cuda cuda_arch=80
  - caliper +cuda cuda_arch=80
  - chai ~benchmarks ~tests +cuda cuda_arch=80 ^umpire ~shared
  - dealii +cuda cuda_arch=80
  - ecp-data-vis-sdk +adios2 +hdf5 +vtkm +zfp +paraview +cuda cuda_arch=80  # adios2, hdf5, hdf5-vfd-gds, paraview, vtk-m, zfp
  - flecsi +cuda cuda_arch=80
  - ginkgo +cuda cuda_arch=80
  - heffte +cuda cuda_arch=80
  - hpx +cuda cuda_arch=80
  - hypre +cuda cuda_arch=80
  - kokkos +wrapper +cuda cuda_arch=80
  - kokkos-kernels +cuda cuda_arch=80 ^kokkos +wrapper +cuda cuda_arch=80
  - magma +cuda cuda_arch=80
  - mfem +cuda cuda_arch=80
  - omega-h +cuda cuda_arch=80
  - petsc +cuda cuda_arch=80
  - py-torch +cuda cuda_arch=80
  - raja +cuda cuda_arch=80
  - slate +cuda cuda_arch=80
  - slepc +cuda cuda_arch=80
  - strumpack ~slate +cuda cuda_arch=80
  - sundials +cuda cuda_arch=80
  - superlu-dist +cuda cuda_arch=80
  - tasmanian +cuda cuda_arch=80
  - trilinos@13.4.1 +cuda cuda_arch=80
  - umpire ~shared +cuda cuda_arch=80

  # CUDA 90
  - caliper +cuda cuda_arch=90
  - chai ~benchmarks ~tests +cuda cuda_arch=90 ^umpire ~shared
  - dealii +cuda cuda_arch=90
  - flecsi +cuda cuda_arch=90
  - ginkgo +cuda cuda_arch=90
  - heffte +cuda cuda_arch=90
  - hpx +cuda cuda_arch=90
  - hypre +cuda cuda_arch=90
  - mfem +cuda cuda_arch=90
  - omega-h +cuda cuda_arch=90
  - petsc +cuda cuda_arch=90
  - py-torch +cuda cuda_arch=90
  - raja +cuda cuda_arch=90
  - slate +cuda cuda_arch=90
  - slepc +cuda cuda_arch=90
  - strumpack ~slate +cuda cuda_arch=90
  - sundials +cuda cuda_arch=90
  - superlu-dist +cuda cuda_arch=90
  - tasmanian +cuda cuda_arch=90
  - umpire ~shared +cuda cuda_arch=90

  # IN ECP-DATA-VIS-SDK +CUDA
  # - adios2 +cuda cuda_arch=80 
  # - adios2 +cuda cuda_arch=90
  # - vtk-m +cuda cuda_arch=80
  # - zfp +cuda cuda_arch=80
  # - zfp +cuda cuda_arch=90  

  # CUDA 80 errors
  # - libpressio +bitgrooming +bzip2 +fpzip +hdf5 +libdistributed +lua +openmp +python +sz +sz3 +unix +zfp +json +remote +netcdf +cusz +mgard +cuda cuda_arch=80 ^cusz +cuda cuda_arch=80   # libpressio
  # --
  # libpressio: libcuszhuff.so: undefined reference to `cuMemGetAddressRange_v2'

  # CUDA 90 errors
  # - amrex +cuda cuda_arch=90                                                # amrex
  # - arborx +cuda cuda_arch=90 ^kokkos +wrapper                              # kokkos
  # - ascent +cuda cuda_arch=90                                               # vtk-m@1.7.1
  # - cabana +cuda ^kokkos +wrapper +cuda_lambda +cuda cuda_arch=90           # kokkos
  # - ecp-data-vis-sdk +adios2 +hdf5 +vtkm +zfp +paraview +cuda cuda_arch=90  # vtk-m, paraview
  # - kokkos +wrapper +cuda cuda_arch=90                                      # kokkos
  # - kokkos-kernels +cuda cuda_arch=90 ^kokkos +wrapper +cuda cuda_arch=90   # kokkos
  # - libpressio +bitgrooming +bzip2 +fpzip +hdf5 +libdistributed +lua +openmp +python +sz +sz3 +unix +zfp +json +remote +netcdf +cusz +mgard +cuda cuda_arch=90 ^cusz +cuda cuda_arch=90   # libpressio
  # - magma +cuda cuda_arch=90                                                # magma
  # - trilinos@13.4.1 +cuda cuda_arch=90                                      # trilinos
  # - vtk-m +cuda cuda_arch=90                                                # vtk-m
  # ---
  # amrex: Segmentation fault (core dumped) - make[2]: *** [Src/CMakeFiles/amrex.dir/build.make:80: Src/CMakeFiles/amrex.dir/Base/AMReX_BlockMutex.cpp.o] Error 139: 
  # kokkos@3.7.00: kokkos: Executing phase: 'cmake': ==> Error: KeyError: '90': kokkos_arch_name = self.spack_cuda_arch_map[cuda_arch]
  # libpressio: libcuszhuff.so: undefined reference to `cuMemGetAddressRange_v2'
  # magma: CMake Error at CMakeLists.txt:277 (message): GPU_TARGET must contain one or more of Fermi, Kepler, Maxwell, Pascal, Volta, Turing, Ampere, or valid sm_[0-9][0-9]
  # paraview: raise InstallError("Incompatible cuda_arch=" + requested_arch[0])
  # trilinos@13.4.1: trilinos: Executing phase: 'cmake': ==> Error: KeyError: '90': options.extend(define("Kokkos_ARCH_" + arch_map[arch].upper(), True) for arch in spec.variants["cuda_arch"].value)
  # vtk-m: CMake Error at CMake/VTKmDeviceAdapters.cmake:216 (message): Error detecting architecture flags for CUDA.  Please set VTKm_CUDA_Architecture manually.
  # vtk-m@1.7.1: CMake Error at CMake/VTKmDeviceAdapters.cmake:197 (message): Error detecting architecture flags for CUDA.  Please set VTKm_CUDA_Architecture manually.

22.11

E4S 22.11 is based on Spack branch e4s-22.11.

CUDA x86-64
spack:
  view: false

  concretizer:
    reuse: false
    unify: false

  packages:
    all:
      compiler: [gcc@11.1.0]
      providers:
        blas: [openblas]
        mpi: [mpich]
      target: [x86_64]
      variants: +mpi
    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
    openblas:
      variants: threads=openmp
    trilinos:
      variants: +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
        +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
        +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
        +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    xz:
      variants: +pic
    mesa:
      version: [21.3.8]
    mpich:
      require: '@4.0.2 ~wrapperrpath ~hwloc'
    ncurses:
      require: '@6.3 +termlib'
    python:
      require: '@3.7.15'

  compilers:
  - compiler:
      spec: gcc@11.1.0
      paths:
        cc: /usr/bin/gcc-11
        cxx: /usr/bin/g++-11
        f77: /usr/bin/gfortran-11
        fc: /usr/bin/gfortran-11
      flags: {}
      operating_system: ubuntu20.04
      target: x86_64
      modules: []
      environment: {}
      extra_rpaths: []

  modules:
    prefix_inspections:
      lib: [LD_LIBRARY_PATH]
      lib64: [LD_LIBRARY_PATH]
    default:
      'enable:': [lmod]
      lmod:
        core_compilers: [gcc@11.1.0]
        verbose: true
        hash_length: 0
        hierarchy: [mpi]
        projections: {}
        core_specs: []
        exclude_implicits: true
        include:
        - adios2
        - ascent
        - autoconf
        - automake
        - cmake
        - darshan-runtime
        - darshan-util
        - hdf5-vol-async
        - mpich
        - parallel-netcdf
        - py-cinemasci
        - sz
        - unifyfs
        - veloc
        - vtk-m
        - zfp
        all:
          autoload: direct
          environment:
            set:
              ${PACKAGE}_ROOT: ${PREFIX}
          suffixes:
            +cuda cuda_arch=70: cuda70
            +cuda cuda_arch=80: cuda80
            +openmp: openmp
        cabana:
          suffixes:
            ^kokkos +cuda cuda_arch=70: cuda70
            ^kokkos +cuda cuda_arch=80: cuda80
        tau:
          suffixes:
            +cuda: cuda
        hpctoolkit:
          suffixes:
            +cuda: cuda
        bricks:
          suffixes:
            +cuda: cuda
        flux-core:
          suffixes:
            +cuda: cuda
        papi:
          suffixes:
            +cuda: cuda
        mpich:
          suffixes:
            ^xz@5.2.6: xz5.2.6
        adios2:
          suffixes:
            ~cuda+hdf5: hdf5
        py-warpx:
          suffixes:
            ^warpx dims=2: dims2
            ^warpx dims=3: dims3
            ^warpx dims=rz: dimsRZ

  specs:
  # CPU
  - adios@1.13.1
  - alquimia@1.0.10
  - aml@0.2.0
  - amrex@22.11
  - arborx@1.3
  - archer@2.0.0
  - argobots@1.1
  - axom@0.7.0
  - bolt@2.0
  - bricks@r0.1
  - butterflypack@2.2.2
  - cabana@0.5.0
  - caliper@2.8.0
  - chai@2022.03.0 ~benchmarks ~tests
  - charliecloud@0.29
  - conduit@0.8.4
  - datatransferkit@3.1-rc3
  - dyninst@12.2.0
  - ecp-data-vis-sdk@1.0 ~cuda ~rocm +adios2 +ascent +cinema +darshan +faodel +hdf5 +paraview +pnetcdf +sz +unifyfs +veloc +visit +vtkm +zfp
  - exaworks@0.1.0
  - flecsi@1.4.2
  - flit@2.1.0
  - flux-core@0.44.0
  - fortrilinos@2.1.0
  - gasnet@2022.9.0
  - ginkgo@1.4.0
  - globalarrays@5.8
  - gmp@6.2.1
  - gotcha@1.0.4
  - gptune@3.0.0
  - h5bench@1.3
  - hdf5-vol-async@1.3
  - heffte@2.3.0 +fftw
  - hpctoolkit@2022.10.01
  - hpx@1.8.1 networking=mpi
  - hypre@2.26.0
  - kokkos@3.7.00 +openmp
  - kokkos-kernels@3.7.00 +openmp
  - lammps@20220623
  - legion@21.03.0
  - libnrm@0.1.0
  - libpressio@0.88.0 +bitgrooming +bzip2 ~cuda ~cusz +fpzip +hdf5 +libdistributed +lua +openmp +python +sz +sz3 +unix +zfp +json +remote +netcdf
  - libquo@1.3.1
  - libunwind@1.6.2
  - mercury@2.1.0
  - metall@0.21
  - mfem@4.5.0
  - mpark-variant@1.4.0
  - mpifileutils@0.11.1 ~xattr
  - nccmp@1.9.0.1
  - nco@5.0.1
  - netlib-scalapack@2.2.0
  - nrm@0.1.0
  - nvhpc@22.9
  - omega-h@9.34.13
  - openmpi@4.1.4
  - openpmd-api@0.14.5
  - papi@6.0.0.1
  - papyrus@1.0.2
  - parsec@3.0.2209 ~cuda
  - pdt@3.25.1
  - petsc@3.18.1
  - phist@1.11.2
  - plasma@22.9.29
  - plumed@2.8.0
  - precice@2.5.0
  - pumi@2.2.7
  - py-jupyterhub@1.4.1
  - py-libensemble@0.9.3
  - py-petsc4py@3.18.1
  - py-warpx@22.10 ^warpx dims=2
  - py-warpx@22.10 ^warpx dims=3
  - py-warpx@22.10 ^warpx dims=rz
  - qthreads@1.16 scheduler=distrib
  - quantum-espresso@7.1
  - raja@2022.03.0
  - scr@3.0.1
  - slate@2022.07.0 ~cuda
  - slepc@3.18.1
  - stc@0.9.0
  - strumpack@7.0.1 ~slate
  - sundials@6.4.1
  - superlu@5.3.0
  - superlu-dist@8.1.1
  - swig@4.0.2
  - swig@4.0.2-fortran
  - tasmanian@7.9
  - tau@2.32 +mpi +python
  - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
    +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
    +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
    +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
  - turbine@1.3.0
  - umap@2.1.0
  - umpire@2022.03.1
  - upcxx@2022.9.0
  - variorum@0.6.0
  - wannier90@3.1.0

  # CUDA, NO ARCH
  - bricks@r0.1 +cuda
  - flux-core@0.44.0 +cuda
  - hpctoolkit@2022.10.01 +cuda
  - papi@6.0.0.1 +cuda
  - tau@2.32 +mpi +cuda

  # CUDA, CUDA_ARCH=80
  - adios2@2.8.3 +cuda cuda_arch=80   # ecp-data-vis-sdk
  - amrex@22.11 +cuda cuda_arch=80
  - arborx@1.3 +cuda cuda_arch=80 ^kokkos@3.7.00 +wrapper
  - ascent@0.8.0 +cuda cuda_arch=80   # ecp-data-vis-sdk
  - cabana@0.5.0 +cuda ^kokkos@3.7.00 +wrapper +cuda_lambda +cuda cuda_arch=80
  - caliper@2.8.0 +cuda cuda_arch=80
  - chai@2022.03.0 ~benchmarks ~tests +cuda cuda_arch=80 ^umpire@2022.03.1 ~shared
  - cusz@0.3 +cuda cuda_arch=80
  - dealii@9.4.0 +cuda cuda_arch=80
  - flecsi@2.1.0 +cuda cuda_arch=80
  - ginkgo@1.4.0 +cuda cuda_arch=80
  - heffte@2.3.0 +cuda cuda_arch=80
  - hpx@1.8.1 +cuda cuda_arch=80
  - hypre@2.26.0 +cuda cuda_arch=80
  - kokkos-kernels@3.7.00 +cuda cuda_arch=80 ^kokkos@3.7.00 +wrapper +cuda cuda_arch=80
  - kokkos@3.7.00 +wrapper +cuda cuda_arch=80
  - magma@2.6.2 +cuda cuda_arch=80
  - mfem@4.5.0 +cuda cuda_arch=80
  - omega-h@9.34.13 +cuda cuda_arch=80
  - petsc@3.18.1 +cuda cuda_arch=80
  - raja@2022.03.0 +cuda cuda_arch=80
  - slate@2022.07.0 +cuda cuda_arch=80
  - slepc@3.18.1 +cuda cuda_arch=80
  - strumpack@7.0.1 ~slate +cuda cuda_arch=80
  - sundials@6.4.1 +cuda cuda_arch=80
  - superlu-dist@8.1.1 +cuda cuda_arch=80
  - tasmanian@7.9 +cuda cuda_arch=80
  - trilinos@13.4.0 +cuda cuda_arch=80
  - umpire@2022.03.1 ~shared +cuda cuda_arch=80
  - vtk-m@1.9.0 +cuda cuda_arch=80    # ecp-data-vis-sdk
  - zfp@0.5.5 +cuda cuda_arch=80      # ecp-data-vis-sdk

  # CUDA, CUDA_ARCH=70
  - adios2@2.8.3 +cuda cuda_arch=70   # ecp-data-vis-sdk
  - amrex@22.11 +cuda cuda_arch=70
  - arborx@1.3 +cuda cuda_arch=70 ^kokkos@3.7.00 +wrapper
  - ascent@0.8.0 +cuda cuda_arch=70   # ecp-data-vis-sdk
  - cabana@0.5.0 +cuda ^kokkos@3.7.00 +wrapper +cuda_lambda +cuda cuda_arch=70
  - caliper@2.8.0 +cuda cuda_arch=70
  - chai@2022.03.0 ~benchmarks ~tests +cuda cuda_arch=70 ^umpire@2022.03.1 ~shared
  - cusz@0.3 +cuda cuda_arch=70
  - dealii@9.4.0 +cuda cuda_arch=70
  - flecsi@2.1.0 +cuda cuda_arch=70
  - ginkgo@1.4.0 +cuda cuda_arch=70
  - heffte@2.3.0 +cuda cuda_arch=70
  - hpx@1.8.1 +cuda cuda_arch=70
  - hypre@2.26.0 +cuda cuda_arch=70
  - kokkos-kernels@3.7.00 +cuda cuda_arch=70 ^kokkos@3.7.00 +wrapper +cuda cuda_arch=70
  - kokkos@3.7.00 +wrapper +cuda cuda_arch=70
  - magma@2.6.2 +cuda cuda_arch=70
  - mfem@4.5.0 +cuda cuda_arch=70
  - omega-h@9.34.13 +cuda cuda_arch=70
  - petsc@3.18.1 +cuda cuda_arch=70
  - raja@2022.03.0 +cuda cuda_arch=70
  - slate@2022.07.0 +cuda cuda_arch=70
  - slepc@3.18.1 +cuda cuda_arch=70
  - strumpack@7.0.1 ~slate +cuda cuda_arch=70
  - sundials@6.4.1 +cuda cuda_arch=70
  - superlu-dist@8.1.1 +cuda cuda_arch=70
  - tasmanian@7.9 +cuda cuda_arch=70
  - trilinos@13.4.0 +cuda cuda_arch=70
  - umpire@2022.03.1 ~shared +cuda cuda_arch=70
  - vtk-m@1.9.0 +cuda cuda_arch=70    # ecp-data-vis-sdk
  - zfp@0.5.5 +cuda cuda_arch=70      # ecp-data-vis-sdk

  # CPU SPECS IN ECP-DATA-VIS-SDK
  # - adios2@2.8.3
  # - ascent@0.8.0
  # - darshan-runtime@3.4.0
  # - darshan-util@3.4.0
  # - faodel@1.2108.1
  # - hdf5@1.12.2 +fortran +hl +shared
  # - parallel-netcdf@1.12.3
  # - paraview@5.10.1
  # - py-cinemasci@1.3
  # - sz@2.1.12.2
  # - unifyfs@1.0
  # - veloc@1.5
  # - visit@3.2.2
  # - vtk-m@1.7.1
  # - zfp@0.5.5

  # ERRORS
  # - dealii@9.4.0                                                                    # slepc
  # - ecp-data-vis-sdk@1.0 ~rocm +cuda cuda_arch=70 +adios2 +ascent +hdf5 +vtkm +zfp
  # - ecp-data-vis-sdk@1.0 ~rocm +cuda cuda_arch=80 +adios2 +ascent +hdf5 +vtkm +zfp
  # - loki@0.1.7                                                                      # loki
  # - rempi@1.1.0                                                                     # rempi
  # ---
  # loki: https://github.com/spack/spack/issues/32122
  # rempi: https://github.com/spack/spack/issues/32123
  # slepc: fetch error

22.08

E4S 22.08 is based on Spack branch e4s-22.08. This release comes with 100+ full product releases. Shown below is the spack configuration from Univ of Oregon system. The specs are pushed to buildcache which can be retrieved using the following commands

$ spack mirror add E4S https://cache.e4s.io/22.08
$ spack buildcache keys -it

Shown below is the spack configuration for CUDA based build for X86_64 platform.

CUDA x86-64
# built and tested in ecpe4s/ubuntu20.04-runner-x86_64:2022-08-01
# using https://github.com/spack/spack checked out at branch e4s-22.08

spack:
  view: false

  concretizer:
    reuse: false
    unify: false

  compilers:
  - compiler:
      spec: gcc@9.4.0
      paths:
        cc: /usr/bin/gcc
        cxx: /usr/bin/g++
        f77: /usr/bin/gfortran
        fc: /usr/bin/gfortran
      flags: {}
      operating_system: ubuntu20.04
      target: x86_64
      modules: []
      environment: {}
      extra_rpaths: []

  packages:
    all:
      compiler: [gcc@9.4.0]
      providers:
        blas: [openblas]
        mpi: [mpich]
      target: [x86_64]
      variants: +mpi
    cuda:
      version: [11.4.4]
    binutils:
      variants: +ld +gold +headers +libiberty ~nls
    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
    python:
      version: [3.8.13]
    trilinos:
      variants: +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
        +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
        +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
        +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    xz:
      variants: +pic
    mesa:
      version: [21.3.8]

  modules:
    prefix_inspections:
      ./lib:
      - LD_LIBRARY_PATH
      ./lib64:
      - LD_LIBRARY_PATH
    default:
      'enable:': [lmod]
      lmod:
        core_compilers: [gcc@9.4.0]
        blacklist_implicits: true
        verbose: true
        hash_length: 0
        whitelist: [mpich, cmake^ncurses@6.3]
        hierarchy: [mpi]
        projections: {}
        core_specs: []
        all:
          autoload: direct
          environment:
            set:
              ${PACKAGE}_ROOT: ${PREFIX}
          suffixes:
            +cuda cuda_arch=70: cuda70
            +cuda cuda_arch=80: cuda80
            +openmp: openmp
        cabana:
          suffixes:
            ^kokkos +cuda cuda_arch=70: cuda70
            ^kokkos +cuda cuda_arch=80: cuda80
        tau:
          suffixes:
            +cuda: cuda
        hpctoolkit:
          suffixes:
            +cuda: cuda
        bricks:
          suffixes:
            +cuda: cuda
        flux-core:
          suffixes:
            +cuda: cuda
        papi:
          suffixes:
            +cuda: cuda
        mpich:
          suffixes:
            ^hwloc+cuda: hwloc-cuda
            ^ncurses@6.3: ncurses6.3
            ^ncurses@6.2: ncurses6.2
        py-warpx:
          suffixes:
            ^warpx dims=2: dims2
            ^warpx dims=3: dims3
            ^warpx dims=rz: dimsRZ

  specs:
  # CPU
  - adios@1.13.1
  - adios2@2.8.3
  - alquimia@1.0.9
  - aml@0.2.0
  - amrex@22.08
  - arborx@1.2
  - archer@2.0.0
  - argobots@1.1
  - ascent@0.8.0
  - axom@0.6.1
  - bolt@2.0
  - bricks@r0.1
  - butterflypack@2.1.1
  - cabana@0.5.0
  - caliper@2.8.0
  - chai@2022.03.0 ~benchmarks ~tests
  - conduit@0.8.3
  - darshan-runtime@3.4.0
  - darshan-util@3.4.0
  - datatransferkit@3.1-rc3
  - dyninst@12.2.0
  - exaworks@0.1.0
  - faodel@1.2108.1
  - flecsi@1.4.2
  - flit@2.1.0
  - flux-core@0.40.0
  - fortrilinos@2.0.0
  - gasnet@2022.3.0
  - geopm@1.1.0
  - ginkgo@1.4.0
  - globalarrays@5.8
  - gmp@6.2.1
  - gotcha@1.0.3
  - gptune@3.0.0
  - h5bench@1.2
  - hdf5@1.12.2 +fortran +hl +shared
  - hdf5-vol-async@1.2
  - heffte@2.2.0 +fftw
  - hpctoolkit@2022.05.15
  - hpx@1.8.1 networking=mpi
  - hypre@2.25.0
  - kokkos@3.6.01 +openmp
  - kokkos-kernels@3.6.00 +openmp
  - lammps@20220623
  - legion@21.03.0
  - libnrm@0.1.0
  - libquo@1.3.1
  - libunwind@1.6.2
  - loki@0.1.7
  - mercury@2.1.0
  - metall@0.21
  - mfem@4.4.0
  - mpark-variant@1.4.0
  - mpifileutils@0.11.1 ~xattr
  - nccmp@1.9.0.1
  - nco@5.0.1
  - netlib-scalapack@2.2.0
  - nrm@0.1.0
  - nvhpc@22.7
  - omega-h@9.34.1
  - openmpi@4.1.4
  - openpmd-api@0.14.5
  - papi@6.0.0.1
  - papyrus@1.0.2
  - parallel-netcdf@1.12.2
  - paraview@5.10.1 +qt ^mesa@21.3.8
  - parsec@3.0.2012 ~cuda
  - pdt@3.25.1
  - petsc@3.17.4
  - phist@1.9.5
  - plasma@21.8.29
  - plumed@2.8.0
  - precice@2.5.0
  - pruners-ninja@1.0.1
  - pumi@2.2.7
  - py-cinemasci@1.7.0
  - py-jupyterhub@1.4.1
  - py-libensemble@0.9.2
  - py-petsc4py@3.17.4
  - py-warpx@22.08 ^warpx dims=2
  - py-warpx@22.08 ^warpx dims=3
  - py-warpx@22.08 ^warpx dims=rz
  - qthreads@1.16 scheduler=distrib
  - raja@2022.03.0
  - rempi@1.1.0
  - scr@3.0
  - slate@2022.06.00 ~cuda
  - slepc@3.17.2
  - stc@0.9.0
  - strumpack@6.3.1 ~slate
  - sundials@6.2.0
  - superlu@5.3.0
  - superlu-dist@7.2.0
  - swig@4.0.2
  - swig@4.0.2-fortran
  - sz@2.1.12.2
  - tasmanian@7.7
  - tau@2.31.1 +mpi +python
  - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
    +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
    +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
    +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
  - turbine@1.3.0
  - umap@2.1.0
  - umpire@2022.03.1
  - unifyfs@0.9.2
  - upcxx@2022.3.0
  - variorum@0.4.1
  - veloc@1.5
  - vtk-m@1.8.0
  - wannier90@3.1.0
  - zfp@0.5.5

  # no cuda_arch
  - tau@2.31.1 +mpi +cuda ^mpich@4.0.2
  - papi@6.0.0.1 +cuda
  - bricks@r0.1 +cuda
  - flux-core@0.40.0 +cuda
  - hpctoolkit@2022.05.15 +cuda

  # cuda_arch=80
  - adios2@2.8.3 +cuda cuda_arch=80
  - amrex@22.08 +cuda cuda_arch=80
  - arborx@1.2 +cuda cuda_arch=80 ^kokkos@3.6.01 +wrapper
  - ascent@0.8.0 +cuda cuda_arch=80
  - cabana@0.5.0 +cuda ^kokkos@3.6.01 +wrapper +cuda_lambda +cuda cuda_arch=80
  - caliper@2.8.0 +cuda cuda_arch=80
  - chai@2022.03.0 ~benchmarks ~tests +cuda cuda_arch=80 ^umpire ~shared
  - flecsi@2.1.0 +cuda cuda_arch=80
  - ginkgo@1.4.0 +cuda cuda_arch=80
  - heffte@2.2.0 +cuda cuda_arch=80
  - hpx@1.8.1 +cuda cuda_arch=80
  - hypre@2.25.0 +cuda cuda_arch=80
  - kokkos@3.6.01 +wrapper +cuda cuda_arch=80
  - kokkos-kernels@3.6.00 +cuda cuda_arch=80 ^kokkos@3.6.00 +wrapper +cuda cuda_arch=80
  - magma@2.6.2 +cuda cuda_arch=80
  - mfem@4.4.0 +cuda cuda_arch=80
  - parsec@3.0.2012 +cuda cuda_arch=80 
  - petsc@3.17.4 +cuda cuda_arch=80
  - raja@2022.03.0 +cuda cuda_arch=80
  - slate@2022.06.00 +cuda cuda_arch=80
  - slepc@3.17.2 +cuda cuda_arch=80
  - strumpack@6.3.1 ~slate +cuda cuda_arch=80
  - sundials@6.2.0 +cuda cuda_arch=80
  - superlu-dist@7.2.0 +cuda cuda_arch=80
  - tasmanian@7.7 +cuda cuda_arch=80
  - trilinos@13.4.0 +cuda cuda_arch=80
  - umpire@2022.03.1 ~shared +cuda cuda_arch=80
  - vtk-m@1.8.0 +cuda cuda_arch=80
  - zfp@0.5.5 +cuda cuda_arch=80

  # cuda_arch=70
  - adios2@2.8.3 +cuda cuda_arch=70
  - amrex@22.08 +cuda cuda_arch=70
  - arborx@1.2 +cuda cuda_arch=70 ^kokkos@3.6.01 +wrapper
  - ascent@0.8.0 +cuda cuda_arch=70
  - cabana@0.5.0 +cuda ^kokkos@3.6.01 +wrapper +cuda_lambda +cuda cuda_arch=70
  - caliper@2.8.0 +cuda cuda_arch=70
  - chai@2022.03.0 ~benchmarks ~tests +cuda cuda_arch=70 ^umpire ~shared
  - flecsi@2.1.0 +cuda cuda_arch=70
  - ginkgo@1.4.0 +cuda cuda_arch=70
  - heffte@2.2.0 +cuda cuda_arch=70
  - hpx@1.8.1 +cuda cuda_arch=70
  - hypre@2.25.0 +cuda cuda_arch=70
  - kokkos@3.6.01 +wrapper +cuda cuda_arch=70
  - kokkos-kernels@3.6.00 +cuda cuda_arch=70 ^kokkos@3.6.00 +wrapper +cuda cuda_arch=70
  - magma@2.6.2 +cuda cuda_arch=70
  - mfem@4.4.0 +cuda cuda_arch=70
  - parsec@3.0.2012 +cuda cuda_arch=70 
  - petsc@3.17.4 +cuda cuda_arch=70
  - raja@2022.03.0 +cuda cuda_arch=70
  - slate@2022.06.00 +cuda cuda_arch=70
  - slepc@3.17.2 +cuda cuda_arch=70
  - strumpack@6.3.1 ~slate +cuda cuda_arch=70
  - sundials@6.2.0 +cuda cuda_arch=70
  - superlu-dist@7.2.0 +cuda cuda_arch=70
  - tasmanian@7.7 +cuda cuda_arch=70
  - trilinos@13.4.0 +cuda cuda_arch=70
  - umpire@2022.03.1 ~shared +cuda cuda_arch=70
  - vtk-m@1.8.0 +cuda cuda_arch=70
  - zfp@0.5.5 +cuda cuda_arch=70

  # FAILURES
  # - dealii@9.4.0 +cuda    # dealii
  # -----
  # dealii: Could NOT find CUDA: CMake Error at cmake/configure/configure_10_cuda.cmake:200

  # SKIPPED
  # - charliecloud

22.05

E4S 22.05 is based on Spack branch e4s-22.05. This release comes with 100+ full product releases. Shown below is the spack configuration from Univ of Oregon system. The specs are pushed to buildcache which can be retrieved using the following commands

$ spack mirror add E4S https://cache.e4s.io/22.05
$ spack buildcache keys -it

Shown below is the spack configuration for CUDA based build for X86_64 platform.

CUDA x86-64
spack:

  view: false
  concretization: separately

  config:
    concretizer: clingo

  compilers:
  - compiler:
      spec: gcc@9.4.0
      paths:
        cc: /usr/bin/gcc
        cxx: /usr/bin/g++
        f77: /usr/bin/gfortran
        fc: /usr/bin/gfortran
      flags: {}
      operating_system: ubuntu20.04
      target: x86_64
      modules: []
      environment: {}
      extra_rpaths: []

  modules:
    default:
      enable:: [lmod]
      lmod:
        core_compilers: [gcc@9.4.0]
        blacklist_implicits: true
        verbose: true
        hash_length: 0
        whitelist: [mpich, cmake]
        hierarchy: [mpi]
        projections: {}
        core_specs: []
        all:
          autoload: direct
          environment:
            set:
              ${PACKAGE}_ROOT: ${PREFIX}
          suffixes:
            +cuda: cuda
            +openmp: openmp
        mpich:
          suffixes:
            ^hwloc+cuda: hwloc-cuda
        py-warpx:
          suffixes:
            ^warpx dims=2: dims2
            ^warpx dims=3: dims3
            ^warpx dims=rz: dimsRZ

  packages:
    all:
      compiler: [gcc@9.4.0]
      providers:
        blas: [openblas]
        mpi: [mpich]
      target: [x86_64]
      variants: +mpi
    binutils:
      variants: +ld +gold +headers +libiberty ~nls
    cuda:
      version: [11.4.2]
    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
    python:
      version: [3.8.13]
    trilinos:
      variants: +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
        +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
        +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
        +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    xz:
      variants: +pic
    mesa:
      version: [21.3.8]

  specs:
  # CPU
  - adios@1.13.1
  - adios2@2.8.0
  - alquimia@1.0.9
  - aml@0.1.0
  - amrex@22.05
  - arborx@1.2
  - archer@2.0.0
  - argobots@1.1
  - ascent@0.8.0
  - axom@0.6.1
  - bolt@2.0
  - bricks@r0.1
  - butterflypack@2.1.1
  - cabana@0.4.0
  - caliper@2.7.0
  - chai@2.4.0 ~benchmarks ~tests
  - charliecloud@0.26
  - conduit@0.8.3
  - darshan-runtime@3.3.1
  - darshan-util@3.3.1
  - datatransferkit@3.1-rc3
  - dyninst@12.1.0
  - exaworks@0.1.0
  - faodel@1.2108.1
  - flecsi@1.4.2
  - flit@2.1.0
  - flux-core@0.38.0
  - fortrilinos@2.0.0
  - gasnet@2022.3.0
  - geopm@1.1.0
  - ginkgo@1.4.0
  - globalarrays@5.8
  - gmp@6.2.1
  - gotcha@1.0.3
  - gptune@3.0.0
  - h5bench@1.2
  - hdf5@1.10.7 +fortran +hl +shared
  - heffte@2.2.0 +fftw
  - hpctoolkit@2022.04.15
  - hpx@1.7.1 networking=mpi
  - hypre@2.24.0
  - kokkos@3.6.00 +openmp
  - kokkos-kernels@3.6.00 +openmp
  - lammps@20220107
  - legion@21.03.0
  - libnrm@0.1.0
  - libquo@1.3.1
  - libunwind@1.6.2
  - loki@0.1.7
  - mercury@2.1.0
  - metall@0.20
  - mfem@4.4.0
  - mpark-variant@1.4.0
  - mpifileutils@0.11.1 ~xattr
  - nccmp@1.9.0.1
  - nco@5.0.1
  - netlib-scalapack@2.2.0
  - nrm@0.1.0
  - nvhpc@22.3
  - omega-h@9.34.1
  - openmpi@4.1.3
  - openpmd-api@0.14.4
  - papi@6.0.0.1
  - papyrus@1.0.2
  - parallel-netcdf@1.12.2
  - paraview@5.10.1 +qt
  - parsec@3.0.2012 ~cuda
  - pdt@3.25.1
  - petsc@3.17.1
  - phist@1.9.5
  - plasma@21.8.29
  - plumed@2.6.3
  - precice@2.4.0
  - pruners-ninja@1.0.1
  - pumi@2.2.7
  - py-cinemasci@1.7.0
  - py-jupyterhub@1.4.1
  - py-libensemble@0.9.1
  - py-petsc4py@3.17.1
  - py-warpx@22.05 ^warpx dims=2
  - py-warpx@22.05 ^warpx dims=3
  - py-warpx@22.05 ^warpx dims=rz
  - qthreads@1.16 scheduler=distrib
  - raja@0.14.0
  - rempi@1.1.0
  - scr@3.0rc2
  - slate@2021.05.02 ~cuda
  - slepc@3.17.1
  - stc@0.9.0
  - strumpack@6.3.1 ~slate
  - sundials@6.2.0
  - superlu@5.3.0
  - superlu-dist@7.2.0
  - swig@4.0.2
  - swig@4.0.2-fortran
  - sz@2.1.12
  - tasmanian@7.7
  - tau@2.31 +mpi +python
  - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext +ifpack
    +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu +nox +piro
    +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos +teko
    +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
  - turbine@1.3.0
  - umap@2.1.0
  - umpire@6.0.0
  - unifyfs@0.9.2
  - upcxx@2022.3.0
  - variorum@0.4.1
  - veloc@1.5
  - vtk-m@1.7.1
  - wannier90@3.1.0
  - zfp@0.5.5

  # GPU
  - adios2@2.8.0 +cuda cuda_arch=80
  - arborx@1.2 +cuda cuda_arch=80 ^kokkos@3.6.00 +wrapper
  - bricks@r0.1 +cuda
  - cabana@0.4.0 +cuda ^kokkos@3.6.00 +wrapper +cuda_lambda +cuda cuda_arch=80
  - caliper@2.7.0 +cuda cuda_arch=80
  - chai@2.4.0 ~benchmarks ~tests +cuda cuda_arch=80 ^umpire@6.0.0 ~shared
  - flux-core@0.38.0 +cuda
  - ginkgo@1.4.0 +cuda cuda_arch=80
  - heffte@2.2.0 +cuda cuda_arch=80
  - hpctoolkit@2022.04.15 +cuda
  - hpx@1.7.1 +cuda cuda_arch=80
  - hypre@2.24.0 +cuda cuda_arch=80
  - kokkos@3.6.00 +wrapper +cuda cuda_arch=80
  - kokkos-kernels@3.6.00 +cuda cuda_arch=80 ^kokkos@3.6.00 +wrapper +cuda cuda_arch=80
  - magma@2.6.2 +cuda cuda_arch=80
  - mfem@4.4.0 +cuda cuda_arch=80
  - papi@6.0.0.1 +cuda
  - parsec@3.0.2012 +cuda cuda_arch=80
  - petsc@3.17.1+cuda cuda_arch=80
  - raja@0.14.0 +cuda cuda_arch=80
  - slate@2021.05.02 +cuda cuda_arch=80
  - slepc@3.17.1 +cuda cuda_arch=80
  - strumpack@6.3.1 ~slate +cuda cuda_arch=80
  - sundials@6.2.0 +cuda cuda_arch=80
  - superlu-dist@7.2.0 +cuda cuda_arch=80
  - tasmanian@7.7 +cuda cuda_arch=80
  - tau@2.31.1 +mpi +cuda ^mpich@4.0.2
  - trilinos@13.2.0 +cuda cuda_arch=80
  - umpire@6.0.0 ~shared +cuda cuda_arch=80
  - vtk-m@1.7.1 +cuda cuda_arch=80
  - zfp@0.5.5 +cuda cuda_arch=80

  # CONCRETIZATION ISSUE
  #- amrex@2.8.0 +cuda cuda_arch=80
  #- flecsi@1.4.2 +cuda cuda_arch=80

  # SKIPPED
  #- gasnet@2022.3.0 +cuda cuda_arch=80 conduits=mpi       # requires driver
  #- legion@21.03.0 +cuda cuda_arch=80                     # requires driver
  #- upcxx@2022.3.0 +cuda                                  # requires driver

  # BUILD FAILED - CPU
  #- catalyst@5.6.0                                        # https://github.com/spack/spack/issues/30478
  #- dealii@9.3.3
  #- stat@4.1.0

  # BUILD FAILED - GPU
  #- ascent@0.8.0 ~shared +cuda cuda_arch=80               # https://github.com/spack/spack/issues/27954
  #- axom@0.6.1 +cuda cuda_arch=80 ^umpire@6.0.0 ~shared   # https://github.com/spack/spack/issues/29520
  #- dealii@9.3.3 +cuda cuda_arch=80                       # https://github.com/spack/spack/issues/29523
  #- lammps@20220107 +cuda cuda_arch=80                    # https://github.com/spack/spack/issues/30590

22.02

E4S 22.02 is based on Spack branch e4s-22.02. This release comes with 100 full product releases. Shown below is the spack configuration from Univ of Oregon system. The specs are pushed to buildcache which can be retrieved using the following commands

$ spack mirror add E4S https://cache.e4s.io/22.02
$ spack buildcache keys -it
x86-64
spack:
  view: false
  concretization: separately

  config:
    concretizer: clingo

  packages:
    all:
      compiler:
      - gcc@9.3.0
      providers:
        blas:
        - openblas
        mpi:
        - mpich
      target:
      - x86_64
      variants: +mpi
    binutils:
      variants: +ld +gold +headers +libiberty ~nls
      version:
      - 2.36.1
    cuda:
      version:
      - 11.4.2
    doxygen:
      version:
      - 1.8.20
    elfutils:
      variants: +bzip2 ~nls +xz
    hdf5:
      variants: +fortran +hl +shared
      version:
      - 1.10.7
    libfabric:
      variants: fabrics=sockets,tcp,udp,rxm
    libunwind:
      variants: +pic +xz
    mesa:
      variants: ~llvm
    mesa18:
      variants: ~llvm
    mpich:
      variants: ~wrapperrpath
    ncurses:
      variants: +termlib
    openblas:
      variants: threads=openmp
    python:
      version:
      - 3.8.12
    trilinos:
      variants: +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
        +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
        +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
        +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    xz:
      variants: +pic

  definitions:
    - cpu_specs:
      - adios@1.13.1
      - adios2@2.7.1
      - alquimia@1.0.9
      - aml@0.1.0
      - amrex@22.02
      - arborx@1.1
      - archer@2.0.0
      - argobots@1.1
      - ascent@0.7.1
      - axom@0.6.1
      - bolt@2.0
      - butterflypack@2.1.0
      - cabana@0.4.0
      - caliper@2.7.0
      - catalyst@5.6.0
      - chai@2.4.0 ~benchmarks ~tests
      - charliecloud@0.26
      - conduit@0.8.2
      - darshan-runtime@3.3.1
      - darshan-util@3.3.1
      - datatransferkit@3.1-rc3
      - dyninst@12.0.1
      - exaworks@0.1.0
      - faodel@1.2108.1
      - flecsi@1.4.2
      - flit@2.1.0
      - flux-core@0.35.0
      - fortrilinos@2.0.0
      - gasnet@2021.9.0
      - geopm@1.1.0
      - ginkgo@1.4.0
      - globalarrays@5.8
      - gmp@6.2.1
      - gotcha@1.0.3
      - gptune@2.1.0
      - hdf5@1.10.7 +fortran +hl +shared
      - heffte@2.2.0 +fftw
      - hpctoolkit@2022.01.15
      - hpx@1.7.1 networking=mpi
      - hypre@2.24.0
      - kokkos-kernels@3.5.00 +openmp
      - kokkos@3.5.00 +openmp
      - lammps@20220107
      - legion@21.03.0
      - libnrm@0.1.0
      - libquo@1.3.1
      - libunwind@1.5.0
      - loki@0.1.7
      - mercury@2.1.0
      - metall@0.17
      - mfem@4.3.0
      - mpark-variant@1.4.0
      - mpifileutils@0.11.1 ~xattr
      - nccmp@1.9.0.1
      - nco@5.0.1
      - netlib-scalapack@2.1.0
      - ninja@1.10.2
      - nrm@0.1.0
      - nvhpc@22.1
      - omega-h@9.34.1
      - openmpi@4.1.2
      - openpmd-api@0.14.4
      - papi@6.0.0.1
      - papyrus@1.0.1
      - parallel-netcdf@1.12.2
      - paraview@5.10.0
      - parsec@3.0.2012 ~cuda
      - pdt@3.25.1
      - petsc@3.16.4
      - phist@1.9.5
      - plasma@21.8.29
      - plumed@2.6.3
      - precice@2.3.0
      - pumi@2.2.6
      - py-cinemasci@1.3
      - py-jupyterhub@1.4.1
      - py-libensemble@0.8.0
      - py-petsc4py@3.16.4
      - py-warpx@22.02 ^warpx dims=2
      - py-warpx@22.02 ^warpx dims=3
      - py-warpx@22.02 ^warpx dims=rz
      - qthreads@1.16 scheduler=distrib
      - raja@0.14.0
      - rempi@1.1.0
      - scr@3.0rc2
      - slate@2021.05.02 ~cuda
      - slepc@3.16.2
      - stc@0.9.0
      - strumpack@6.3.0 ~slate
      - sundials@6.1.1
      - superlu-dist@7.2.0
      - superlu@5.3.0
      - swig@4.0.2
      - swig@4.0.2-fortran
      - sz@2.1.12
      - tasmanian@7.7
      - tau@2.31 +mpi +python
      - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
      - turbine@1.3.0
      - umap@2.1.0
      - umpire@6.0.0
      - unifyfs@0.9.1
      - upcxx@2021.9.0
      - variorum@0.4.1
      - veloc@1.5
      - vtk-m@1.7.1
      - wannier90@3.1.0
      - zfp@0.5.5
     #- dealii@9.3.2
     #- stat@4.1.0

    - cuda_specs:
      - amrex@22.02 +cuda cuda_arch=80
      - caliper@2.7.0 +cuda cuda_arch=80
      - chai@2.4.0 ~benchmarks ~tests +cuda cuda_arch=80 ^umpire@6.0.0 ~shared
      - flecsi@2.1.0 +cuda cuda_arch=80
      - flux-core@0.35.0 +cuda # not CudaPackage
      - ginkgo@1.4.0 +cuda cuda_arch=80
      - heffte@2.2.0 +cuda cuda_arch=80
      - hpctoolkit@2022.01.15 +cuda # not CudaPackage
      - hpx@1.7.1 +cuda cuda_arch=80
      - hypre@2.24.0 +cuda cuda_arch=80
      - kokkos-kernels@3.5.00 +cuda cuda_arch=80 ^kokkos@3.5.00 +wrapper +cuda cuda_arch=80
      - kokkos@3.5.00 +wrapper +cuda cuda_arch=80
      - magma@2.6.1 +cuda cuda_arch=80
      - mfem@4.3.0 +cuda cuda_arch=80
      - openmpi@4.1.2 +cuda # not CudaPackage
      - papi@6.0.0.1 +cuda # not CudaPackage
      - parsec@3.0.2012 +cuda cuda_arch=80
      - petsc@3.16.4 +cuda cuda_arch=80
      - raja@0.14.0 +cuda cuda_arch=80
      - slate@2021.05.02 +cuda cuda_arch=80
      - slepc@3.16.2 +cuda cuda_arch=80
      - strumpack@6.3.0 ~slate +cuda cuda_arch=80
      - sundials@6.1.1 +cuda cuda_arch=80
      - superlu-dist@7.2.0 +cuda cuda_arch=80
      - tasmanian@7.7 +cuda cuda_arch=80
      - trilinos@13.2.0 +cuda cuda_arch=80
      - umpire@6.0.0 ~shared +cuda cuda_arch=80
      - vtk-m@1.7.1 +cuda cuda_arch=80
      - zfp@0.5.5 +cuda cuda_arch=80
     #- arborx@1.1 +cuda # not CudaPackage
     #- ascent@0.7.1 ~shared +cuda cuda_arch=80
     #- axom@0.6.1 +cuda cuda_arch=80 ^umpire ~shared
     #- cabana@0.4.0 +cuda # not CudaPackage 
     #- dealii@9.3.2 +cuda cuda_arch=80 # gmsh
     #- legion@21.03.0 +cuda cuda_arch=80
     #- llvm@13.0.0 +cuda cuda_arch=80
     #- paraview@5.10.0 +cuda cuda_arch=80
     #- upcxx@2021.9.0 +cuda # not CudaPackage, needs driver

    - rocm_specs:
      - amrex@22.02 +rocm amdgpu_target=gfx908
      - chai@2.4.0 ~benchmarks +rocm amdgpu_target=gfx908
      - ginkgo@1.4.0 +rocm amdgpu_target=gfx908
      - heffte@2.2.0 +rocm amdgpu_target=gfx908
      - hpx@1.7.1 +rocm amdgpu_target=gfx908
      - kokkos@3.5.00 +rocm amdgpu_target=gfx908
      - magma@2.6.1 ~cuda +rocm amdgpu_target=gfx908
      - mfem@4.3.0 +rocm amdgpu_target=gfx908
      - petsc@3.16.4 +rocm amdgpu_target=gfx908
      - raja@0.14.0 ~openmp +rocm amdgpu_target=gfx908
      - slate@2021.05.02 +rocm amdgpu_target=gfx908
      - slepc@3.16.2 +rocm amdgpu_target=gfx908 ^petsc +rocm amdgpu_target=gfx908
      - strumpack@6.3.0 ~slate +rocm amdgpu_target=gfx908
      - superlu-dist@7.2.0 +rocm amdgpu_target=gfx908
      - umpire@6.0.0 +rocm amdgpu_target=gfx908
     #- arborx@1.1 +rocm ^kokkos +rocm amdgpu_target=gfx908 # Not ROCmPackage # Could not find a package configuration file provided by "rocthrust"
     #- cabana@0.4.0 +rocm # https://github.com/spack/spack/issues/27967
     #- hpctoolkit@2022.01.15 +rocm # Not ROCmPackage
     #- papi@6.0.0.1 +rocm amdgpu_target=gfx908 # https://github.com/spack/spack/issues/27898
     #- sundials@6.1.1 +rocm amdgpu_target=gfx908
     #- tasmanian@7.7 +rocm amdgpu_target=gfx908 # https://github.com/spack/spack/issues/27896
     #- vtk-m@1.7.1 +rocm amdgpu_target=gfx908

  specs:
  - $cpu_specs
  - $cuda_specs
  - $rocm_specs

21.11

E4S 21.11 is based on Spack branch e4s-21.11. This release comes with 91 full product releases. Shown below is the spack configuration from Univ of Oregon system. The specs are pushed to buildcache which can be retrieved using the following commands

$ spack mirror add E4S https://cache.e4s.io/21.11
$ spack buildcache keys -it
x86-64
spack:

  view: false
  concretization: separately

  packages:
    all:
      compiler:
      - gcc@9.3.0
      providers:
        blas:
        - openblas
        mpi:
        - mpich
      target:
      - x86_64
      variants: +mpi
    cuda:
      version:
      - 11.4.2
    binutils:
      variants: +ld +gold +headers +libiberty ~nls +plugins
      version:
      - 2.36.1
    boost:
      variants: visibility=global
    doxygen:
      version:
      - 1.8.20
    elfutils:
      variants: +bzip2 ~nls +xz
    fftw:
      variants: +openmp
    hdf5:
      variants: +fortran +hl +shared api=v18
      version:
      - 1.12.1
    libfabric:
      variants: fabrics=sockets,tcp,udp,rxm
    libunwind:
      variants: +pic +xz
    mesa:
      variants: ~llvm
    mesa18:
      variants: ~llvm
    mpich:
      variants: ~wrapperrpath
    ncurses:
      variants: +termlib
    openblas:
      variants: threads=openmp
    trilinos:
      variants: +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext
        +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu
        +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos
        +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    xz:
      variants: +pic

  definitions:
  - cuda_specs:
    - amrex@21.11 +cuda cuda_arch=80
    - caliper@2.7.0 +cuda cuda_arch=80
    - chai@2.4.0 ~benchmarks ~tests +cuda cuda_arch=80 ^umpire ~shared
    - flecsi@2.1.0 +cuda cuda_arch=80
    - ginkgo@1.4.0 +cuda cuda_arch=80
    - heffte@2.2.0 +cuda cuda_arch=80
    - hpx@1.7.1 +cuda cuda_arch=80
    - hypre@2.23.0 +cuda cuda_arch=80
    - kokkos@3.4.01 +wrapper +cuda cuda_arch=80
    - kokkos-kernels@3.4.01 +cuda cuda_arch=80 ^kokkos +wrapper +cuda cuda_arch=80
    - magma@2.6.1 +cuda cuda_arch=80
    - mfem@4.3.0 +cuda cuda_arch=80
    - parsec@3.0.2012 +cuda cuda_arch=80
    - petsc@3.16.1 +cuda cuda_arch=80
    - raja@0.14.0 +cuda cuda_arch=80
    - slate@2021.05.02 +cuda cuda_arch=80
    - slepc@3.16.0 +cuda cuda_arch=80
    - strumpack@6.1.0 ~slate +cuda cuda_arch=80
    - sundials@5.8.0 +cuda cuda_arch=80
    - superlu-dist@7.1.1 +cuda cuda_arch=80
    - tasmanian@7.7 +cuda cuda_arch=80
    - trilinos@13.2.0 +cuda cuda_arch=80
    - umpire@6.0.0 ~shared +cuda cuda_arch=80
    - upcxx@2021.9.0 +cuda
    - vtk-m@1.6.0 +cuda cuda_arch=80
    - zfp@0.5.5 +cuda cuda_arch=80
   #- ascent ~shared +cuda cuda_arch=80
   #- axom +cuda cuda_arch=80 ^umpire ~shared
   #- dealii +cuda cuda_arch=80 # gmsh
   #- paraview +cuda cuda_arch=80

  - rocm_specs:
    - amrex@21.11 +rocm amdgpu_target=gfx908
    - ginkgo@1.4.0 +rocm amdgpu_target=gfx908
    - heffte@2.2.0 +rocm amdgpu_target=gfx908
    - kokkos@3.4.01 +rocm amdgpu_target=gfx908
    - magma@2.6.1 +rocm amdgpu_target=gfx908
    - mfem@4.3.0 +rocm amdgpu_target=gfx908
    - slate@2021.05.02 +rocm amdgpu_target=gfx908
    - strumpack@6.1.0 ~slate +rocm amdgpu_target=gfx908
   #- chai ~benchmarks +rocm amdgpu_target=gfx908
   #- hpx +rocm amdgpu_target=gfx908
   #- papi +rocm amdgpu_target=gfx908
   #- petsc +rocm amdgpu_target=gfx908
   #- raja ~openmp +rocm amdgpu_target=gfx908
   #- slepc +rocm amdgpu_target=gfx908
   #- sundials +rocm amdgpu_target=gfx908
   #- tasmanian +rocm amdgpu_target=gfx908
   #- umpire +rocm amdgpu_target=gfx908

  - default_specs:
    - adios2@2.7.1
    - adios@1.13.1
    - alquimia@1.0.9
    - aml@0.1.0
    - amrex@21.11
    - arborx@1.1
    - argobots@1.1
    - ascent@0.7.1
    - axom@0.5.0
    - bolt@2.0
    - butterflypack@2.0.0
    - cabana@0.4.0
    - caliper@2.7.0
    - catalyst@5.6.0
    - chai@2.4.0 ~benchmarks ~tests
    - charliecloud@0.25
    - conduit@0.7.2
    - darshan-runtime@3.3.1
    - darshan-util@3.3.1
    - datatransferkit@3.1-rc3
    - dyninst@11.0.1
    - exaworks@0.1.0
    - faodel@1.2108.1
    - flecsi@1.4.2
    - flit@2.1.0
    - flux-core@0.30.0
    - fortrilinos@2.0.0
    - gasnet@2021.9.0
    - ginkgo@1.4.0
    - globalarrays@5.8
    - gmp@6.2.1
    - gotcha@1.0.3
    - hdf5@1.12.1
    - heffte@2.2.0 +fftw
    - hpctoolkit@2021.10.15
    - hpx@1.7.1
    - hypre@2.23.0
    - kokkos-kernels@3.4.01 +openmp
    - kokkos@3.4.01 +openmp
    - legion@21.03.0
    - libnrm@0.1.0
    - libquo@1.3.1
    - libunwind@1.5.0
    - llvm@13.0.0 +all_targets +clang +compiler-rt +libcxx +lld +lldb +llvm_dylib +flang ~cuda
    - loki@0.1.7
    - mercury@2.0.1
    - metall@0.17
    - mfem@4.3.0
    - mpark-variant@1.4.0
    - mpifileutils@0.11 ~xattr
    - netlib-scalapack@2.1.0
    - ninja@1.10.2
    - nrm@0.1.0
    - nvhpc@21.9
    - omega-h@9.34.1
    - openmpi@4.1.1
    - openpmd-api@0.14.3 ^hdf5@1.12.0 +fortran +shared +hl api=default
    - papi@6.0.0.1
    - papyrus@1.0.1
    - parallel-netcdf@1.12.2
    - paraview@5.9.1
    - parsec@3.0.2012 ~cuda
    - pdt@3.25.1
    - petsc@3.16.1
    - phist@1.9.5
    - plasma@21.8.29
    - precice@2.3.0
    - pumi@2.2.6
    - py-cinemasci@1.3
    - py-jupyterhub@1.4.1
    - py-libensemble@0.8.0
    - py-petsc4py@3.16.1
    - py-warpx@21.11 ^warpx dims=2 ^hdf5@1.12.0 +fortran +shared +hl api=default
    - py-warpx@21.11 ^warpx dims=3 ^hdf5@1.12.0 +fortran +shared +hl api=default
    - py-warpx@21.11 ^warpx dims=rz ^hdf5@1.12.0 +fortran +shared +hl api=default
    - qthreads@1.16 scheduler=distrib
    - raja@0.14.0
    - rempi@1.1.0
    - scr@3.0rc2
    - slate@2021.05.02 ~cuda
    - slepc@3.16.0
    - stc@0.9.0
    - strumpack@6.1.0 ~slate
    - sundials@5.8.0
    - superlu-dist@7.1.1
    - superlu@5.3.0
    - swig@4.0.2
    - swig@4.0.2-fortran
    - sz@2.1.12
    - tasmanian@7.7
    - tau@2.31 +mpi +python
    - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    - turbine@1.3.0
    - umap@2.1.0
    - umpire
    - unifyfs@0.9.1
    - upcxx@2021.9.0
    - veloc@1.5
    - vtk-m@1.6.0
    - zfp@0.5.5
    #- archer # https://github.com/spack/spack/issues/25050
    #- dealii
    #- geopm
    #- qt
    #- qwt
    #- stat
    #- variorum

  specs:
  - $cuda_specs
  - $rocm_specs
  - $default_specs

21.08

E4S 21.08 is based on Spack branch e4s-21.08. This release contains 88 full product releases. Shown below is the spack configuration from Univ of Oregon system. The specs are pushed to buildcache which can be retrieved using the following commands

$ spack mirror add E4S https://cache.e4s.io/21.08
$ spack buildcache keys -it
x86-64
spack:

  view: false
  concretization: separately

  packages:
    all:
      compiler: [gcc@9.3.0]
      providers:
        blas: [openblas]
        mpi: [mpich]
      target:
        - x86_64
      variants: +mpi
    autoconf:
      version: [2.69]
    automake:
      version: [1.16.3]
    berkeley-db:
      version: [18.1.40]
    binutils:
      version: [2.36.1]
      variants: +ld +gold +headers +libiberty ~nls +plugins
    boost:
      version: [1.76.0]
      variants: visibility=global
    bzip2:
      version: [1.0.8]
    c-blosc:
      version: [1.21.0]
    cmake:
      version: [3.20.5]
    curl:
      version: [7.76.1]
    diffutils:
      version: [3.7]
    doxygen:
      version: [1.8.20]
    elfutils:
      version: [0.185]
      variants: +bzip2 ~nls +xz
    expat:
      version: [2.4.1]
    fftw:
      variants: +openmp
    findutils:
      version: [4.8.0]
    gdbm:
      version: [1.19]
    gettext:
      version: [0.21]
    git:
      version: [2.31.1]
    glib:
      version: [2.68.2]
    hdf5:
      version: [1.12.0]
      variants: +fortran +hl +shared api=v18
    help2man:
      version: [1.47.16]
    hwloc:
      version: [2.4.1]
    json-c:
      version: [0.15]
    libbsd:
      version: [0.11.3]
    libfabric:
      version: [1.12.1]
      variants: fabrics=sockets,tcp,udp,rxm
    libiconv:
      version: [1.16]
    libsigsegv:
      version: [2.13]
    libpciaccess:
      version: [0.16]
    libtool:
      version: [2.4.6]
    libunwind:
      version: [1.5.0]
      variants: +pic +xz
    libxml2:
      version: [2.9.10]
    lz4:
      version: [1.9.3]
    m4:
      version: [1.4.19]
    mesa:
      variants: ~llvm
    mesa18:
      variants: ~llvm
    mpich:
      version: [3.4.2]
      variants: ~wrapperrpath
    ncurses:
      version: [6.2]
      variants: +termlib
    numactl:
      version: [2.0.14]
    openblas:
      version: [0.3.17]
      variants: threads=openmp
    openssl:
      version: [1.1.1k]
    perl:
      version: [5.34.0]
    pkgconf:
      version: [1.7.4]
    python:
      version: [3.8.10]
    readline:
      version: [8.1]
    sqlite:
      version: [3.35.5]
    tar:
      version: [1.34]
    trilinos:
      version: [13.0.1]
      variants: +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    texinfo:
      version: [6.5]
    xz:
      version: [5.2.5]
      variants: +pic
    zlib:
      version: [1.2.11]
    zstd:
      version: [1.5.0]

  compilers:
  - compiler:
      spec: gcc@9.3.0
      paths:
        cc: /usr/bin/gcc
        cxx: /usr/bin/g++
        f77: /usr/bin/gfortran
        fc: /usr/bin/gfortran
      flags: {}
      operating_system: ubuntu20.04
      target: x86_64
      modules: []
      environment: {}
      extra_rpaths: []

  definitions:

  - cuda_specs:
    - amrex +cuda cuda_arch=70
    - caliper +cuda cuda_arch=70
    - chai +cuda ~benchmarks ~tests cuda_arch=70 ^umpire@4.1.2 ~shared
    - ginkgo +cuda cuda_arch=70
    - hpx +cuda cuda_arch=70
    - hypre +cuda cuda_arch=70
    - kokkos +cuda +wrapper cuda_arch=70
    - kokkos-kernels +cuda cuda_arch=70 ^kokkos +cuda +wrapper cuda_arch=70
    - magma +cuda cuda_arch=70
    - mfem +cuda cuda_arch=70
    - parsec +cuda cuda_arch=70
    - raja +cuda cuda_arch=70
    - slate +cuda cuda_arch=70
    - strumpack +cuda ~slate cuda_arch=70
    - sundials +cuda cuda_arch=70
    - superlu-dist +cuda cuda_arch=70
    - tasmanian +cuda cuda_arch=70
    - umpire@4.1.2 +cuda ~shared cuda_arch=70
    - zfp +cuda cuda_arch=70
    #- ascent +cuda ~shared cuda_arch=70
    #- axom +cuda cuda_arch=70 ^umpire@4.1.2 ~shared
    #- paraview +cuda ~shared cuda_arch=70

  - rocm_specs:
    - kokkos +rocm amdgpu_target=gfx906
    #- strumpack +rocm ~slate amdgpu_target=gfx906 ^rocsolver build_type=Release
    #- amrex +rocm amdgpu_target=gfx906
    #- chai +rocm ~benchmarks amdgpu_target=gfx906
    #- ginkgo +rocm amdgpu_target=gfx906 # needs hip<4.1
    #- raja +rocm ~openmp amdgpu_target=gfx906 # blt 0.3.6 issue with rocm
    #- slate +rocm amdgpu_target=gfx906
    #- sundials +rocm amdgpu_target=gfx906
    #- tasmanian +rocm amdgpu_target=gfx906
    #- umpire+rocm amdgpu_target=gfx906 # blt 0.3.6 issue with rocm

  - aux_specs:
    - axom@0.5.0 ^umpire@4.1.2
    - cabana@0.3.0
    - charliecloud@0.24
    - conduit@0.7.2
    - faodel@1.1906.1
    - globalarrays@5.8
    - gotcha@1.0.3
    - hpx@1.7.1
    - libnrm@0.1.0
    - libquo@1.3.1
    - libunwind@1.5.0
    - loki@0.1.7
    - mercury@2.0.1
    - mpark-variant@1.4.0
    - mpifileutils@0.11 ~xattr
    - ninja@1.10.2
    - nrm@0.1.0
    - openpmd-api@0.13.4 ^hdf5@1.12.0 +fortran +shared +hl api=default
    - pdt@3.25.1
    - phist@1.9.4
    - plasma@20.9.20
    - precice@2.2.1
    - pumi@2.2.6
    - py-jupyterhub@1.0.0
    - py-libensemble@0.7.2
    - py-petsc4py@3.15.3
    - py-warpx@21.08 ^warpx dims=2 ^hdf5@1.12.0 +fortran +shared +hl api=default
    - py-warpx@21.08 ^warpx dims=3 ^hdf5@1.12.0 +fortran +shared +hl api=default
    - py-warpx@21.08 ^warpx dims=rz ^hdf5@1.12.0 +fortran +shared +hl api=default
    - qt@5.15.2
    - qwt@6.1.6
    - slepc@3.15.1
    - stc@0.9.0
    - turbine@1.3.0
    #- dealii
    #- visit

  - core_specs:
    - adios@1.13.1
    - adios2@2.7.1
    - aml@0.1.0
    - amrex@21.08
    - arborx@1.0
    - argobots@1.1
    - ascent@0.7.1
    - bolt@2.0
    - caliper@2.6.0
    - chai@2.3.0 ~benchmarks ~tests ^umpire@4.1.2
    - darshan-runtime@3.3.1
    - darshan-util@3.3.1
    - datatransferkit@3.1-rc2
    - dyninst@11.0.1
    - flecsi@1.4.2
    - flit@2.1.0
    - flux-core@0.28.0
    - fortrilinos@2.0.0
    - gasnet@2021.3.0
    - geopm@1.1.0
    - ginkgo@1.3.0
    - hdf5@1.12.0
    - heffte@2.1.0 +fftw
    - hpctoolkit@2021.05.15
    - hypre@2.22.0
    - kokkos@3.4.00 +openmp
    - kokkos-kernels@3.2.00 +openmp
    - legion@21.03.0
    - metall@0.15
    - mfem@4.3.0
    - netlib-scalapack@2.1.0
    - nvhpc@21.7
    - omega-h@9.32.5
    - openmpi@4.1.1
    - papi@6.0.0.1
    - papyrus@1.0.1
    - parallel-netcdf@1.12.2
    - paraview@5.9.1
    - parsec@3.0.2012 ~cuda
    - petsc@3.15.3
    - qthreads@1.16 scheduler=distrib
    - raja@0.13.0
    - rempi@1.1.0
    - scr@3.0rc1
    - slate@2021.05.02 ~cuda
    - strumpack@5.1.1 ~slate
    - sundials@5.7.0
    - superlu@5.2.2
    - superlu-dist@6.4.0
    - swig@4.0.2
    - swig@4.0.2-fortran
    - sz@2.1.12
    - tasmanian@7.5
    - tau@2.30.1
    - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +boost +epetra +epetraext +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos +teko +tempus +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long_long
    - umap@2.1.0
    - umpire@4.1.2
    - unifyfs@0.9.1
    - upcxx@2021.3.0
    - veloc@1.4
    - vtk-m@1.6.0
    - zfp@0.5.5
    #- archer # https://github.com/spack/spack/issues/25050
    #- stat
    #- variorum

  specs:
  - $cuda_specs
  - $rocm_specs
  - $core_specs
  - $aux_specs

21.05

The E4S 21.05 release is based on spack branch e4s-21.05 which comes with 76 full product releases. The specs are pushed to build cache which can accessed by running the following command:

$ spack mirror add E4S https://cache.e4s.io/21.05
$ spack buildcache keys -it

Shown below is the spack configuration built at Univ of Oregon.

x86-64
spack:
  view: false
  concretization: separately
  packages:
    all:
      compiler:
      - gcc@9.3.0
      providers:
        blas:
        - openblas
        mpi:
        - mpich
      target:
      - x86_64
      variants: +mpi
    autoconf:
      version:
      - '2.69'
    automake:
      version:
      - 1.16.3
    berkeley-db:
      version:
      - 18.1.40
    binutils:
      variants: +ld +gold +headers +libiberty ~nls +plugins
      version:
      - 2.33.1
    boost:
      version:
      - 1.75.0
    bzip2:
      version:
      - 1.0.8
    c-blosc:
      version:
      - 1.21.0
    cmake:
      version:
      - 3.20.2
    curl:
      version:
      - 7.76.0
    diffutils:
      version:
      - 3.7
    elfutils:
      version:
      - 0.182
      variants: +bzip2 ~nls +xz
    expat:
      version:
      - 2.2.10
    findutils:
      version:
      - 4.8.0
    gdbm:
      version:
      - 1.18.1
    gettext:
      version:
      - 0.21
    git:
      version:
      - 2.31.0
    glib:
      version:
      - 2.66.8
    hdf5:
      variants: +fortran +hl +shared
      version:
      - 1.10.7
    help2man:
      version:
      - 1.47.16
    hwloc:
      version:
      - 2.4.1
    json-c:
      version:
      - 0.13.1
    libbsd:
      version:
      - 0.10.0
    libfabric:
      version:
      - 1.12.1
      variants: fabrics=sockets,tcp,udp,rxm
    libiconv:
      version:
      - 1.16
    libsigsegv:
      version:
      - 2.12
    libpciaccess:
      version:
      - 0.16
    libtool:
      version:
      - 2.4.6
    libunwind:
      version:
      - 1.5.0
      variants: +pic +xz
    libxml2:
      version:
      - 2.9.10
    lz4:
      version:
      - 1.9.3
    m4:
      version:
      - 1.4.18
    mesa:
      variants: ~llvm
    mesa18:
      variants: ~llvm
    mpich:
      variants: ~wrapperrpath
      version:
      - 3.4.1
    ncurses:
      version:
      - 6.2
      variants: +termlib
    numactl:
      version:
      - 2.0.14
    openblas:
      version:
      - 0.3.10
      variants: threads=openmp
    openssl:
      version:
      - 1.1.1k
    perl:
      version:
      - 5.32.1
    pkgconf:
      version:
      - 1.7.3
    python:
      version:
      - 3.8.10
    readline:
      version:
      - 8
    sqlite:
      version:
      - 3.34.0
    tar:
      version:
      - 1.32
    texinfo:
      version:
      - 6.5
    xz:
      version:
      - 5.2.5
      variants: +pic
    zlib:
      version:
      - 1.2.11
    zstd:
      version:
      - 1.4.9

  definitions:

  - cuda_specs:
    - amrex@21.05 +cuda cuda_arch=70
    - axom@0.5.0 +cuda cuda_arch=70 ^umpire~shared
    - caliper@2.5.0 +cuda cuda_arch=70
    - chai@2.3.0 +cuda ~benchmarks ~tests cuda_arch=70 ^umpire~shared
    - ginkgo@1.3.0 +cuda cuda_arch=70
    - hpx@1.6.0 +cuda cuda_arch=70
    - kokkos@3.4.00 +cuda +wrapper cuda_arch=70
    - kokkos-kernels@3.2.00 +cuda cuda_arch=70 ^kokkos +cuda +wrapper cuda_arch=70
    - magma@2.5.4 cuda_arch=70
    - raja@0.13.0 +cuda cuda_arch=70
    - slate@2021.05.02 +cuda cuda_arch=70
    - strumpack@5.1.1 +cuda ~slate cuda_arch=70
    - sundials@5.7.0 +cuda cuda_arch=70
    - superlu-dist@6.4.0 +cuda cuda_arch=70
    - tasmanian@7.5 +cuda cuda_arch=70
    - umpire@4.1.2 +cuda ~shared cuda_arch=70
    - zfp +cuda cuda_arch=70
    #- ascent@0.7.1 +cuda ~shared cuda_arch=70
    #- hypre@2.20.0 +cuda cuda_arch=70
    #- mfem@4.2.0 +cuda cuda_arch=70

  - rocm_specs:
    - kokkos@3.4.00 +rocm amdgpu_target=gfx906
    - strumpack@5.1.1 +rocm ~slate amdgpu_target=gfx906
    #- amrex@0.5.0 +rocm amdgpu_target=gfx906
    #- chai@2.3.0 +rocm ~benchmarks amdgpu_target=gfx906
    #- ginkgo@1.3.0 +rocm amdgpu_target=gfx906 # needs hip<4.1
    #- raja@0.13.0 +rocm ~openmp amdgpu_target=gfx906 # blt 0.3.6 issue with rocm
    #- slate@2021.05.02 +rocm amdgpu_target=gfx906
    #- sundials@5.7.0 +rocm amdgpu_target=gfx906
    #- tasmanian@7.5 +rocm amdgpu_target=gfx906
    #- umpire@4.1.2 +rocm amdgpu_target=gfx906 # blt 0.3.6 issue with rocm

  - default_specs:
    - adios@1.13.1
    - adios2@2.7.1
    - aml@0.1.0
    - amrex@21.05
    - arborx@1.0
    - archer@2.0.0
    - argobots@1.1
    - ascent@0.7.1
    - axom@0.5.0
    - bolt@2.0
    - cabana@0.3.0
    - caliper@2.5.0
    - chai@2.3.0 ~benchmarks ~tests
    - conduit@0.7.2
    - darshan-runtime@3.3.0
    - darshan-util@3.3.0
    - dyninst@11.0.0
    - faodel@1.1906.1
    - flecsi@1.4 +cinch
    - flit@2.1.0
    - fortrilinos@2.0.0
    - gasnet@2021.3.0
    - ginkgo@1.3.0
    - globalarrays@5.8
    - gmp@6.2.1
    - gotcha@1.0.3
    - hdf5@1.10.7
    - heffte@2.0.0 +fftw
    - hpctoolkit@2021.03.01
    - hpx@1.6.0
    - hypre@2.20.0
    - kokkos@3.4.00 +openmp
    - kokkos-kernels@3.2.00 +openmp
    - legion@21.03.0
    - libnrm@0.1.0
    - libquo@1.3.1
    - libunwind@1.5.0
    - loki@0.1.7
    - mercury@2.0.1
    - metall@0.13
    - mfem@4.2.0
    - mpark-variant@1.4.0
    - mpifileutils@0.11 ~xattr
    - ninja@1.10.2
    - nrm@0.1.0
    - omega-h@9.32.5
    - openmpi@4.0.5
    - openpmd-api@0.13.4
    - papi@6.0.0.1
    - papyrus@1.0.1
    - parallel-netcdf@1.12.2
    - pdt@3.25.1
    - petsc@3.15.0
    - plasma@20.9.20
    - precice@2.2.1
    - pumi@2.2.5
    - py-jupyterhub@1.0.0
    - py-libensemble@0.7.2
    - py-petsc4py@3.15.0
    - py-warpx@21.05 ^warpx dims=2
    - py-warpx@21.05 ^warpx dims=3
    - py-warpx@21.05 ^warpx dims=rz
    - qt@5.15.2
    - qthreads@1.16 scheduler=distrib
    - qwt@6.1.6
    - raja@0.13.0
    - rempi@1.1.0
    - scr@3.0rc1
    - slate@2021.05.02 ~cuda
    - slepc@3.15.0
    - stc@0.9.0
    - strumpack@5.1.1 ~slate
    - sundials@5.7.0
    - superlu@5.2.1
    - superlu-dist@6.4.0
    - swig@4.0.2
    - swig@4.0.2-fortran
    - sz@2.1.11.1
    - tasmanian@7.5
    - tau@2.30.1
    - trilinos@13.0.1 +amesos +amesos2 +anasazi +aztec +belos +epetra +epetraext +ifpack +ifpack2 +intrepid +intrepid2 +isorropia +kokkos +ml +minitensor +muelu +nox +piro +phalanx +rol +rythmos +sacado +stk +shards +shylu +stokhos +stratimikos +teko +tempus +teuchos +tpetra +trilinoscouplings +zoltan +zoltan2 +superlu-dist gotype=long
    - turbine@1.3.0
    - umap@2.1.0
    - umpire@4.1.2
    - unifyfs@0.9.1
    - upcxx@2021.3.0
    - zfp@0.5.5

    # Packages that track branches
    #- llvm-doe@doe +clang +compiler-rt +libcxx +lld +lldb +llvm_dylib +flang

    # Packages w/ build or concretization issues
    #- dealii 
    #- geopm
    #- variorum
    #- veloc

  specs:
  - $cuda_specs
  - $rocm_specs
  - $default_specs

21.02

E4S 21.02 is is based on spack tag e4s-21.02 which comes with 67 product releases. Shown below is the spack configuration built at Univ of Oregon machine.

x86-64
spack:
  view: false
  concretization: separately

  packages:
    all:
      compiler:
        - gcc@7.5.0
      providers:
        blas:
          - openblas
        mpi:
          - mpich
      target:
        - x86_64
      variants: +mpi
    autoconf:
      version:
        - '2.69'
    automake:
      version:
        - 1.16.2
    berkeley-db:
      version:
        - 18.1.40
    binutils:
      variants: +gold+headers+libiberty~nls
      version:
        - 2.33.1
    boost:
      version:
        - 1.74.0
    bzip2:
      version:
        - 1.0.8
    cmake:
      version:
        - 3.18.4
    diffutils:
      version:
        - 3.7
    elfutils:
      version:
        - 0.182
    expat:
      version:
        - 2.2.10
    gdbm:
      version:
        - 1.18.1
    gettext:
      version:
        - 0.21
    hdf5:
      variants: +fortran
      version:
        - 1.10.7
    help2man:
      version:
        - 1.47.11
    hip:
      version:
        - 4.0.0
    libbsd:
      version:
        - 0.10.0
    libiconv:
      version:
        - 1.16
    libsigsegv:
      version:
        - 2.12
    libunwind:
      version:
        - 1.4.0
    libxml2:
      version:
        - 2.9.10
    m4:
      version:
        - 1.4.18
    mpich:
      variants: ~wrapperrpath
      version:
        - 3.3.2
    ncurses:
      version:
        - 6.2
    openblas:
      version:
        - 0.3.10
    perl:
      version:
        - 5.32.0
    pkgconf:
      version:
        - 1.7.3
    python:
      version:
        - 3.8.6
    readline:
      version:
        - 8
    sqlite:
      version:
        - 3.33.0
    tar:
      version:
        - 1.32
    texinfo:
      version:
        - 6.5
    xz:
      version:
        - 5.2.5
    zlib:
      version:
        - 1.2.11

  specs:
  - adios@1.13.1
  - adios2@2.7.1
  - aml@0.1.0
  - amrex@21.02
  - arborx@0.9-beta
  - argobots@1.0
  - ascent@0.6.0
  - axom@0.4.0
  - bolt@2.0
  - caliper@2.5.0
  - darshan-runtime@3.2.1
  - darshan-util@3.2.1
  - dyninst@10.2.1
  - faodel@1.1906.1
  - flecsi@1.4 +cinch
  - flit@2.1.0
  - gasnet@2020.3.0
  - ginkgo@1.3.0
  - globalarrays@5.8
  - gotcha@1.0.3
  - hdf5@1.10.7
  - hpctoolkit@2020.08.03
  - hpx@1.6.0
  - hypre@2.20.0
  - kokkos-kernels@3.2.00 +openmp
  - kokkos@3.2.00 +openmp
  - legion@20.03.0
  - libnrm@0.1.0
  - libquo@1.3.1
  - magma@2.5.4 cuda_arch=70 ^cuda@10.2.89
  - mercury@2.0.0
  - mfem@4.2.0
  - mpifileutils@0.10.1
  - ninja@1.10.2
  - omega-h@9.32.5
  - openmpi@4.0.5
  - openpmd-api@0.13.2
  - papi@6.0.0.1
  - papyrus@1.0.1
  - parallel-netcdf@1.12.1
  - pdt@3.25.1
  - petsc@3.14.4
  - phist@1.9.3
  - plasma@20.9.20
  - precice@2.2.0
  - pumi@2.2.5
  - py-jupyterhub@1.0.0
  - py-libensemble@0.7.1
  - py-petsc4py@3.14.1
  - qthreads@1.16 scheduler=distrib
  - raja@0.13.0
  - rempi@1.1.0
  - scr@2.0.0
  - slate@2020.10.00 ^openblas@0.3.5 ^cuda@10.2.89
  - slepc@3.14.2
  - stc@0.8.3
  - strumpack@5.1.1 ~slate ^openblas threads=openmp
  - sundials@5.7.0
  - superlu@5.2.1
  - superlu-dist@6.4.0
  - swig@4.0.2-fortran
  - sz@2.1.11.1
  - tasmanian@7.3
  - tau@2.30.1
  - trilinos@13.0.1
  - turbine@1.2.3
  - umap@2.1.0
  - umpire@4.1.2
  - upcxx@2020.10.0
  - veloc@1.4
  - zfp@0.5.5

  - kokkos@3.2.00 +cuda+wrapper cuda_arch=70 ^cuda@10.2.89
  - kokkos@3.2.00 +rocm amdgpu_target=gfx906
  - raja@0.13.0 +rocm~openmp amdgpu_target=gfx906 ^hip@4.0.0
  - strumpack@5.1.1 ~slate+rocm amdgpu_target=gfx906 ^openblas threads=openmp
  - umpire@4.1.2 +rocm amdgpu_target=gfx906 ^hip@4.0.0

  #- llvm-doe@doe +clang +compiler-rt +libcxx +lld +lldb +llvm_dylib +flang

20.10

E4S 20.10 is the first release E4S that is distributed as a spack configuration (spack.yaml) that can be used by facilities to install E4S stack from source. This release is based on Spack commit e1e0bbb4cbe11a3f0d7e50466ffa86071ee653b7. This release comes with 67 product. Shown below is the spack configuration for Univ of Oregon.

x86-64
spack:
  view: false
  concretization: separately

  packages:
    all:
      providers:
        blas:
        - openblas
        mpi:
        - mpich
      variants: +mpi
    autoconf:
      version:
        - 2.69
    automake:
      version:
        - 1.16.2
    berkeley-db:
      version:
        - 18.1.4
    binutils:
      variants: +gold+headers+libiberty~nls
      version:
        - 2.33.1
    boost:
      version:
        - 1.73.0
    bzip2:
      version:
        - 1.0.8
    cmake:
      version:
        - 3.17.3
    diffutils:
      version:
        - 3.7
    elfutils:
      version:
        - 0.18
    expat:
      version:
        - 2.2.9
    gdbm:
      version:
        - 1.18.1
    gettext:
      version:
        - 0.20.2
    hdf5:
      variants: +fortran
      version:
        - 1.10.6
    help2man:
      version:
        - 1.47.11
    libbsd:
      version:
        - 0.10.0
    libiconv:
      version:
        - 1.16
    libsigsegv:
      version:
        - 2.12
    libunwind:
      version:
        - 1.4.0
    libxml2:
      version:
        - 2.9.10
    m4:
      version:
        - 1.4.18
    mpich:
      variants: ~wrapperrpath
      version:
        - 3.2.1
    ncurses:
      version:
        - 6.2
    perl:
      version:
        - 5.30.3
    pkgconf:
      version:
        - 1.7.3
    python:
      version:
        - 3.7.8
    readline:
      version:
        - 8
    sqlite:
      version:
        - 3.31.1
    tar:
      version:
        - 1.32
    texinfo:
      version:
        - 6.5
    xz:
      version:
        - 5.2.5
    zlib:
      version:
        - 1.2.11

  specs:
  - adios@1.13.1
  - adios2@2.6.0
  - aml@0.1.0
  - arborx@0.9-beta
  - axom@0.3.3
  - bolt@1.0
  - caliper@2.4.0
  - darshan-runtime@3.2.1
  - darshan-util@3.2.1
  - dyninst@10.2.1
  - faodel@1.1906.1
  - flecsi@1 +cinch
  - flit@2.1.0
  - gasnet@2020.3.0
  - ginkgo@1.3.0
  - globalarrays@5.7
  - gotcha@1.0.3
  - hdf5@1.10.6
  - hpctoolkit@2020.08.03
  - hpx@1.5.1
  - hypre@2.20.0
  - kokkos-kernels@3.2.00
  - kokkos+openmp@3.2.00
  - legion@20.03.0
  - libnrm@0.1.0
  - libquo@1.3.1
  - magma@2.5.4 cuda_arch=70 ^cuda@10.2.89
  - mercury@1.0.1
  - mfem@4.1.0
  - mpifileutils@0.10.1
  - ninja@1.10.1
  - omega-h@9.29.0
  - openmpi@3.1.6
  - openpmd-api@0.12.0
  - papi@6.0.0.1
  - papyrus@1.0.0
  - parallel-netcdf@1.12.1
  - pdt@3.25.1
  - petsc@3.14.0
  - phist@1.9.1
  - plasma@20.9.20
  - precice@2.1.1
  - pumi@2.2.2
  - py-jupyterhub@1.0.0
  - py-libensemble@0.7.1
  - py-petsc4py@3.13.0
  - qthreads@1.14
  - raja@0.12.1
  - rempi@1.1.0
  - scr@2.0.0
  - slepc@3.14.0
  - stc@0.8.3
  - strumpack@5.0.0
  - sundials@5.4.0
  - superlu-dist@6.3.1
  - superlu@5.2.1
  - swig@4.0.2
  - sz@2.1.10
  - tasmanian@7.3
  - tau@2.29.1
  - trilinos@13.0.0
  - turbine@1.2.3
  - umap@2.1.0
  - umpire@4.0.1
  - unifyfs@0.9.0
  - upcxx@2020.3.0
  - veloc@1.4
  - zfp@0.5.5
  #- ascent@develop
  #- slate@develop ^cuda@10.2.89