diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d37b7a7904f54ef62fae86d1732ab029ed1c6f2d..12e33182171d307a7bbcdbbc4a866c798f570935 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,4 +10,4 @@ simpletrack: variables: - $CI_COMMIT_REF_NAME == "master" changes: - - lhc/simpletrack/* \ No newline at end of file + - lhc/simpletrack/* diff --git a/lhc/simpletrack/.simpletrack-ci.yml b/lhc/simpletrack/.simpletrack-ci.yml index a67ff6cf4c24a498652871c1d5a24933845c32e2..9d16d71d6c856264833138c8d1f1c12150f94ee4 100644 --- a/lhc/simpletrack/.simpletrack-ci.yml +++ b/lhc/simpletrack/.simpletrack-ci.yml @@ -1,6 +1,7 @@ --- stages: - build +- test .job_template: &job_build stage: build @@ -13,18 +14,52 @@ stages: - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json - export HEP_TAG=`grep HEPWL_DOCKERIMAGETAG lhc/simpletrack/lhc-simpletrack.spec | cut -d "=" -f 2` -build:nvidia: +nvidia: <<: *job_build script: - - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/lhc/simpletrack/Dockerfile.nvidia --destination ${CI_REGISTRY_IMAGE}/lhc/simpletrack:nvidia-$HEP_TAG --destination ${CI_REGISTRY_IMAGE}/lhc/simpletrack:nvidia-latest + - mkdir public && wget http://img.shields.io/badge/${HEP_TAG}-Failed-red?style=flat-square -O public/build_simpletrack_nvidia.svg + - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/lhc/simpletrack/Dockerfile.nvidia --destination ${CI_REGISTRY_IMAGE}/lhc/simpletrack:nvidia-$HEP_TAG --destination ${CI_REGISTRY_IMAGE}/lhc/simpletrack:nvidia-latest + - wget http://img.shields.io/badge/${HEP_TAG}-Done-green?style=flat-square -O public/build_simpletrack_nvidia.svg + artifacts: + paths: + - public/build_simpletrack_nvidia.svg -build:intel: +intel: <<: *job_build script: + - mkdir public && wget http://img.shields.io/badge/${HEP_TAG}-Failed-red?style=flat-square -O public/build_simpletrack_intel.svg - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/lhc/simpletrack/Dockerfile.intel --destination ${CI_REGISTRY_IMAGE}/lhc/simpletrack:intel-$HEP_TAG --destination ${CI_REGISTRY_IMAGE}/lhc/simpletrack:intel-latest + - wget http://img.shields.io/badge/${HEP_TAG}-Done-green?style=flat-square -O public/build_simpletrack_intel.svg + artifacts: + paths: + - public/build_simpletrack_intel.svg -build:pocl: +pocl: <<: *job_build script: + - mkdir public && wget http://img.shields.io/badge/${HEP_TAG}-Failed-red?style=flat-square -O public/build_simpletrack_pocl.svg - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/lhc/simpletrack/Dockerfile.pocl --destination ${CI_REGISTRY_IMAGE}/lhc/simpletrack:pocl-$HEP_TAG --destination ${CI_REGISTRY_IMAGE}/lhc/simpletrack:pocl-latest + - wget http://img.shields.io/badge/${HEP_TAG}-Done-green?style=flat-square -O public/build_simpletrack_pocl.svg + artifacts: + paths: + - public/build_simpletrack_pocl.svg +intel-test: + stage: test + image: + name: gitlab-registry.cern.ch/hep-benchmarks/hep-workloads-gpu/lhc/simpletrack:intel-latest + entrypoint: [""] + environment: + name: test/$CI_COMMIT_REF_NAME + script: + - cd /simpletrack/examples/lhc && python3 benchmark_opencl.py -s && python3 benchmark_opencl.py -p 100 -t 5 + +pocl-test: + stage: test + image: + name: gitlab-registry.cern.ch/hep-benchmarks/hep-workloads-gpu/lhc/simpletrack:pocl-latest + entrypoint: [""] + environment: + name: test/$CI_COMMIT_REF_NAME + script: + - cd /simpletrack/examples/lhc && python3 benchmark_opencl.py -s && python3 benchmark_opencl.py -p 100 -t 5 diff --git a/lhc/simpletrack/CHANGELOG.md b/lhc/simpletrack/CHANGELOG.md new file mode 100644 index 0000000000000000000000000000000000000000..eea2fa9001d9ca66a814e70e90b2ef1f7bacc5a3 --- /dev/null +++ b/lhc/simpletrack/CHANGELOG.md @@ -0,0 +1,9 @@ +# 0.1.0 (June 13th 2020) + +FEATURES: +* Standalone execution of the simpletrack benchmark without an orchestrator. + +CHANGES: +* Tagged build based on the spec definition. +* Using trigger-based build to rebuild only on simpletrack changes. +* CI/CD basic functionality test added for the CPU-based container builds i.e. intel and pocl diff --git a/lhc/simpletrack/README.md b/lhc/simpletrack/README.md index d13364f0b02c2cb5a19b18b79578475895b04d25..d0039530346db43686e0ac214e599d2038714090 100644 --- a/lhc/simpletrack/README.md +++ b/lhc/simpletrack/README.md @@ -6,11 +6,11 @@ Docker images containing Simpletrack benchmark built a selection of GPU/CPU targ - __Nvidia__: contains OpenCL runtime from [this](https://nvidia.github.io/nvidia-container-runtime/) repository. - __POCL__: Portable Computing Language implementation built with this [repo](https://github.com/pocl/pocl) -| Version | intel | nvidia | pocl | -|---------|:-------:|:-------:|:------:| -| GPU | x | x | | -| CPU | x | | x | -| Base OS | Debian | CC7 | Debian | +| | __intel__ | __nvidia__ | __pocl__ | +|--------------|:-------:|:-------:|:------:| +| __GPU__ | :heavy_check_mark: | :heavy_check_mark: | | +| __CPU__ | :heavy_check_mark: | | :heavy_check_mark: | +| Latest build | [](https://gitlab.cern.ch/hep-benchmarks/hep-workloads-gpu/-/commits/master) | [](https://gitlab.cern.ch/hep-benchmarks/hep-workloads-gpu/-/commits/master) | [](https://gitlab.cern.ch/hep-benchmarks/hep-workloads-gpu/-/commits/master) | # Usage