summaryrefslogblamecommitdiff
path: root/share/spack/gitlab/cloud_pipelines/stacks/ml-cpu/spack.yaml
blob: 72c9f14893bb231b2a315f4720a798fa45d23c4e (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

















                                                                                        
                         




























                                                
                          







































                                                             

                                                                                                                      


                                                                                                                                                                   

                                      
                  





                                                                                                                                                                             
                                                                                                                                                                                
 
                         









































                                                                                                                
spack:
  view: false

  concretizer:
    reuse: false
    unify: false

  config:
    concretizer: clingo
    install_tree:
      root: /home/software/spack
      padded_length: 384
      projections:
        all: "{architecture}/{compiler.name}-{compiler.version}/{name}-{version}-{hash}"

  packages:
    all:
      compiler: [gcc@11.2.0]
      target: [x86_64_v3]
      variants: ~cuda~rocm

  specs:
    # Horovod
    - py-horovod

    # JAX
    # https://github.com/google/jax/issues/12614
    # - py-jax
    # - py-jaxlib

    # Keras
    - py-keras
    - py-keras-applications
    - py-keras-preprocessing
    - py-keras2onnx

    # PyTorch
    - py-botorch
    - py-efficientnet-pytorch
    - py-gpytorch
    - py-kornia
    - py-pytorch-gradual-warmup-lr
    - py-pytorch-lightning
    - py-segmentation-models-pytorch
    - py-timm
    - py-torch
    - py-torch-cluster
    - py-torch-geometric
    - py-torch-nvidia-apex
    - py-torch-scatter
    - py-torch-sparse
    - py-torch-spline-conv
    - py-torchaudio
    - py-torchdata
    - py-torchfile
    - py-torchgeo
    - py-torchmeta
    - py-torchmetrics
    - py-torchtext
    - py-torchvision
    - py-vector-quantize-pytorch

    # scikit-learn
    - py-scikit-learn
    - py-scikit-learn-extra

    # TensorBoard
    - py-tensorboard
    - py-tensorboard-data-server
    - py-tensorboard-plugin-wit
    - py-tensorboardx

    # TensorFlow
    - py-tensorflow
    - py-tensorflow-datasets
    - py-tensorflow-estimator
    - py-tensorflow-hub
    - py-tensorflow-metadata
    - py-tensorflow-probability

    # XGBoost
    - py-xgboost
    # - r-xgboost
    - xgboost

  mirrors: { "mirror": "s3://spack-binaries/develop/ml-cpu" }

  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
      - curl -Lfs https://github.com/JuliaBinaryWrappers/GNUMake_jll.jl/releases/download/GNUMake-v4.3.0%2B0/GNUMake.v4.3.0.x86_64-linux-gnu.tar.gz -o gmake.tar.gz
      - printf 'b019c4aa757503d442c906047f6b1c393bf8eeba71260d455537cfc708862249  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
      - 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 > >(tee ${SPACK_ARTIFACTS_ROOT}/user_data/pipeline_out.txt) 2> >(tee ${SPACK_ARTIFACTS_ROOT}/user_data/pipeline_err.txt >&2)

    match_behavior: first
    mappings:
      - match:
          - llvm
        runner-attributes:
          tags: [ "spack", "huge", "x86_64_v4" ]
          variables:
            CI_JOB_SIZE: huge
            KUBERNETES_CPU_REQUEST: 11000m
            KUBERNETES_MEMORY_REQUEST: 42G
      - match:
          - "@:"
        runner-attributes:
          tags: [ "spack", "large", "x86_64_v4" ]
          variables:
            CI_JOB_SIZE: large
            KUBERNETES_CPU_REQUEST: 8000m
            KUBERNETES_MEMORY_REQUEST: 12G

    image: { "name": "ghcr.io/spack/e4s-amazonlinux-2:v2022-03-21", "entrypoint": [""] }

    broken-specs-url: "s3://spack-binaries/broken-specs"

    service-job-attributes:
      before_script:
        - . "./share/spack/setup-env.sh"
        - spack --version
      image: { "name": "ghcr.io/spack/e4s-amazonlinux-2:v2022-03-21", "entrypoint": [""] }
      tags: ["spack", "public", "x86_64_v4"]

    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: Machine Learning
    url: https://cdash.spack.io
    project: Spack Testing
    site: Cloud Gitlab Infrastructure