ADD: working pipeline to test HyQuas and HiQsimulator
This commit is contained in:
28
.gitlab-ci.yml
Normal file
28
.gitlab-ci.yml
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
stages: [build_test]
|
||||||
|
|
||||||
|
variables:
|
||||||
|
GIT_STRATEGY: clone
|
||||||
|
MAX_JOB_NB: 4
|
||||||
|
SPACK_BRANCH: develop
|
||||||
|
SPACK_COMPILER: gcc
|
||||||
|
SPACK_PCKG_VERSION: develop
|
||||||
|
SPACK_PCKG: py-hiqsimulator
|
||||||
|
SPACK_REPO: https://github.com/spack/spack.git
|
||||||
|
SPACK_SPEC: ${SPACK_PCKG}@${SPACK_PCKG_VERSION}%${SPACK_COMPILER}
|
||||||
|
|
||||||
|
build_test:
|
||||||
|
tags:
|
||||||
|
- merlin
|
||||||
|
stage: build_test
|
||||||
|
script:
|
||||||
|
- git clone ${SPACK_REPO} -b ${SPACK_BRANCH}
|
||||||
|
- . "./spack/share/spack/setup-env.sh"
|
||||||
|
- spack env activate --without-view env/merlin/${SPACK_PCKG}
|
||||||
|
- spack install -j ${MAX_JOB_NB} git-lfs
|
||||||
|
- spack develop ${SPACK_SPEC}
|
||||||
|
- spack install -j ${MAX_JOB_NB}
|
||||||
|
- spack load ${SPACK_SPEC}
|
||||||
|
- cd env/merlin/${SPACK_PCKG}/${SPACK_PCKG}
|
||||||
|
- ls -la
|
||||||
|
# - JOB_ID=$(sbatch --parsable ../test/run.slurm)
|
||||||
|
# - cat slurm-${JOB_ID}.out
|
@ -1,6 +0,0 @@
|
|||||||
config:
|
|
||||||
build_stage:
|
|
||||||
- /data/user/$USER/spack/spack-stages
|
|
||||||
install_tree:
|
|
||||||
root: /data/user/$USER/spack/spack-install
|
|
||||||
source_cache: /data/user/$USER/spack/spack-source_cache
|
|
6
env/merlin/HyQuas/sysconfigs/config.yaml
vendored
6
env/merlin/HyQuas/sysconfigs/config.yaml
vendored
@ -1,6 +0,0 @@
|
|||||||
config:
|
|
||||||
build_stage:
|
|
||||||
- /data/user/$USER/spack/spack-stages
|
|
||||||
install_tree:
|
|
||||||
root: /data/user/$USER/spack/spack-install
|
|
||||||
source_cache: /data/user/$USER/spack/spack-source_cache
|
|
@ -2,18 +2,14 @@ spack:
|
|||||||
concretizer:
|
concretizer:
|
||||||
unify: when_possible
|
unify: when_possible
|
||||||
include:
|
include:
|
||||||
- sysconfigs/config.yaml
|
|
||||||
- sysconfigs/compilers.yaml
|
- sysconfigs/compilers.yaml
|
||||||
- sysconfigs/packages.yaml
|
- sysconfigs/packages.yaml
|
||||||
repos:
|
repos:
|
||||||
- .
|
- .
|
||||||
specs:
|
specs:
|
||||||
|
- libfabric@1.15.1
|
||||||
- openmpi@4.0.5%gcc+cuda fabrics=ucx,xpmem,knem,ofi,cma schedulers=slurm ^ucx@1.13.0
|
- openmpi@4.0.5%gcc+cuda fabrics=ucx,xpmem,knem,ofi,cma schedulers=slurm ^ucx@1.13.0
|
||||||
^hwloc@2.7.1 ^knem@1.1.4 ^xpmem@2.6.3 ^pmix@4.1.2
|
^hwloc@2.7.1 ^knem@1.1.4 ^xpmem@2.6.3 ^pmix@4.1.2
|
||||||
- cuda@11.0.2
|
- cuda@11.0.2
|
||||||
- hyquas@main%gcc+cuda cuda_arch=70 ~mpi+schedule+use_double+micro_bench+eval_pp~disable_assert
|
- hyquas@main%gcc+cuda cuda_arch=70 ~mpi+schedule+use_double+micro_bench+eval_pp~disable_assert
|
||||||
backend=mix mat_size=7 ^cuda@11.0.2
|
backend=mix mat_size=7 ^cuda@11.0.2
|
||||||
develop:
|
|
||||||
hyquas:
|
|
||||||
path: /data/user/germann_e/HyQuas
|
|
||||||
spec: hyquas@main%gcc
|
|
@ -31,7 +31,7 @@ class PyHiqsimulator(PythonPackage):
|
|||||||
|
|
||||||
homepage = "https://hiqsimulator.readthedocs.io/en/latest/index.html"
|
homepage = "https://hiqsimulator.readthedocs.io/en/latest/index.html"
|
||||||
|
|
||||||
git = "https://github.com/Huawei-HiQ/HiQsimulator/archive/refs/heads/develop.zip"
|
git = "https://github.com/Huawei-HiQ/HiQsimulator"
|
||||||
|
|
||||||
maintainers = ["germanne"]
|
maintainers = ["germanne"]
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
spack:
|
spack:
|
||||||
include:
|
include:
|
||||||
- sysconfigs/config.yaml
|
|
||||||
- sysconfigs/compilers.yaml
|
- sysconfigs/compilers.yaml
|
||||||
- sysconfigs/packages.yaml
|
- sysconfigs/packages.yaml
|
||||||
repos:
|
repos:
|
||||||
- .
|
- .
|
||||||
specs: [py-hiqsimulator@develop%gcc]
|
specs:
|
||||||
|
- py-hiqsimulator@develop%gcc
|
10
env/merlin/py-hiqsimulator/test/run.slurm
vendored
Normal file
10
env/merlin/py-hiqsimulator/test/run.slurm
vendored
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
#SBATCH -N 4 # 4 nodes are requested
|
||||||
|
#SBATCH -t 00:03:00 # Walltime, 3 minutes
|
||||||
|
#SBATCH -n 8 # 8 processes are requested
|
||||||
|
#SBATCH --ntasks-per-socket=1 # 1 process per allocated socket
|
||||||
|
#SBATCH --hint=compute_bound # Use all cores in each socket, one thread per core
|
||||||
|
#SBATCH --exclusive # node should not be shared with other jobs
|
||||||
|
|
||||||
|
mpirun python3 ./examples/teleport_mpi.py # Execute program
|
Reference in New Issue
Block a user