1bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 2bedd5dcaSJeremy L Thompson# HONEE GitLab CI 3bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 4bedd5dcaSJeremy L Thompsonstages: 5bedd5dcaSJeremy L Thompson - test:stage-lint 6f27266cbSJeremy L Thompson - test:stage-full 7a3c4661bSJames Wright - test:docs 8a3c4661bSJames Wright - deploy 9bedd5dcaSJeremy L Thompson 10bedd5dcaSJeremy L Thompson.test-basic: 11bedd5dcaSJeremy L Thompson interruptible: true 12bedd5dcaSJeremy L Thompson only: 13bedd5dcaSJeremy L Thompson refs: 14bedd5dcaSJeremy L Thompson - web 15bedd5dcaSJeremy L Thompson - merge_requests 16bedd5dcaSJeremy L Thompson 17bedd5dcaSJeremy L Thompson.test: 18bedd5dcaSJeremy L Thompson extends: .test-basic 19bedd5dcaSJeremy L Thompson only: 20bedd5dcaSJeremy L Thompson refs: 21bedd5dcaSJeremy L Thompson - web 22bedd5dcaSJeremy L Thompson - merge_requests 23bedd5dcaSJeremy L Thompson - main 24bedd5dcaSJeremy L Thompson - release 25bedd5dcaSJeremy L Thompson except: 26bedd5dcaSJeremy L Thompson variables: 27bedd5dcaSJeremy L Thompson # Skip if the No-Code label is attached to a merge request (i.e., documentation only) 28bedd5dcaSJeremy L Thompson - $CI_MERGE_REQUEST_LABELS =~ /(^|,)No-Code($|,)/ 29bedd5dcaSJeremy L Thompson needs: 30bedd5dcaSJeremy L Thompson - job: docker-build 31bedd5dcaSJeremy L Thompson optional: true 32bedd5dcaSJeremy L Thompson 33bedd5dcaSJeremy L Thompson.docs: 34bedd5dcaSJeremy L Thompson image: python:3.10 35bedd5dcaSJeremy L Thompson before_script: 36bedd5dcaSJeremy L Thompson - pip install -r doc/requirements.txt 37bedd5dcaSJeremy L Thompson - apt-get update 38bedd5dcaSJeremy L Thompson - apt-get install -y doxygen librsvg2-bin 39bedd5dcaSJeremy L Thompson 40bedd5dcaSJeremy L Thompson 41bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 42bedd5dcaSJeremy L Thompson# Test formatting and static analysis 43bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 44bedd5dcaSJeremy L Thompsonnoether-lint: 45bedd5dcaSJeremy L Thompson stage: test:stage-lint 46bedd5dcaSJeremy L Thompson extends: .test 47bedd5dcaSJeremy L Thompson tags: 48bedd5dcaSJeremy L Thompson - noether 49bedd5dcaSJeremy L Thompson - shell 50bedd5dcaSJeremy L Thompson needs: [] 51bedd5dcaSJeremy L Thompson script: 52bedd5dcaSJeremy L Thompson - rm -f .SUCCESS 53bedd5dcaSJeremy L Thompson # Environment 54bedd5dcaSJeremy L Thompson - export COVERAGE=1 CC=gcc HIPCC=hipcc 55bedd5dcaSJeremy L Thompson - echo "-------------- nproc ---------------" && NPROC_CPU=$(nproc) && NPROC_GPU=$(($(nproc)<8?$(nproc):8)) && echo "NPROC_CPU" $NPROC_CPU && echo "NPROC_GPU" $NPROC_GPU 56bedd5dcaSJeremy L Thompson - echo "-------------- CC ------------------" && $CC --version 57bedd5dcaSJeremy L Thompson - echo "-------------- GCOV ----------------" && gcov --version 58bedd5dcaSJeremy L Thompson - echo "-------------- HIPCC ---------------" && $HIPCC --version && export HIP_DIR=/opt/rocm 59bedd5dcaSJeremy L Thompson # Libraries 60bedd5dcaSJeremy L Thompson # -- libCEED 61bedd5dcaSJeremy L Thompson - echo "-------------- libCEED -------------" 62bedd5dcaSJeremy L Thompson - export CEED_DIR=/projects/honee/libCEED && git -C $CEED_DIR -c safe.directory=$CEED_DIR describe && make -C $CEED_DIR info 63bedd5dcaSJeremy L Thompson # -- PETSc 64bedd5dcaSJeremy L Thompson - echo "-------------- PETSc ---------------" 65bedd5dcaSJeremy L Thompson - export PETSC_DIR=/projects/honee/petsc 66bedd5dcaSJeremy L Thompson - export PETSC_ARCH=arch-serial-gpu && git -C $PETSC_DIR -c safe.directory=$PETSC_DIR describe && make -C $PETSC_DIR info 67bedd5dcaSJeremy L Thompson - export PETSC_OPTIONS='-malloc_debug no' # faster tests 68bedd5dcaSJeremy L Thompson - export LD_LIBRARY_PATH=$PETSC_DIR/lib PATH="$PATH:$PETSC_DIR/bin" # cgnsdiff 69bedd5dcaSJeremy L Thompson # make with Werror, Wall, supress loop vectorization warnings 70bedd5dcaSJeremy L Thompson - echo "-------------- make Werror ---------" 7174512b2dSJeremy L Thompson - PEDANTIC=1 PEDANTICFLAGS="-Werror -Wall -Wno-pass-failed" make -j$NPROC_CPU 72bedd5dcaSJeremy L Thompson # make format 73bedd5dcaSJeremy L Thompson - echo "-------------- make format ---------" && export CLANG_FORMAT=clang-format-15 && $CLANG_FORMAT --version 74bedd5dcaSJeremy L Thompson - make -j$NPROC_CPU format && git diff --color=always --exit-code 75bedd5dcaSJeremy L Thompson # Clang-tidy 76bedd5dcaSJeremy L Thompson - echo "-------------- clang-tidy ----------" && export CLANG_TIDY=clang-tidy-15 && $CLANG_TIDY --version 771bb043dcSJeremy L Thompson - PETSC_ARCH=arch-serial-gpu make -j$NPROC_CPU tidy 78bedd5dcaSJeremy L Thompson # Report status 79bedd5dcaSJeremy L Thompson - touch .SUCCESS 80bedd5dcaSJeremy L Thompson 81bedd5dcaSJeremy L Thompson 82bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 83bedd5dcaSJeremy L Thompson# Test memory access assumptions 84bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 85bedd5dcaSJeremy L Thompsonnoether-memcheck: 86f27266cbSJeremy L Thompson stage: test:stage-lint 87bedd5dcaSJeremy L Thompson extends: .test 88bedd5dcaSJeremy L Thompson tags: 89bedd5dcaSJeremy L Thompson - noether 90bedd5dcaSJeremy L Thompson - shell 91bedd5dcaSJeremy L Thompson needs: [] 92bedd5dcaSJeremy L Thompson script: 93bedd5dcaSJeremy L Thompson - rm -f .SUCCESS 94bedd5dcaSJeremy L Thompson # Environment 95bedd5dcaSJeremy L Thompson # -- NOTE: Coverage disabled because it doesn't play nice with the ASAN options 96bedd5dcaSJeremy L Thompson - export CC=clang-15 97bedd5dcaSJeremy L Thompson - export NPROC_POOL=8 98bedd5dcaSJeremy L Thompson - echo "-------------- nproc ---------------" && NPROC_CPU=$(nproc) && NPROC_GPU=$(($(nproc)<8?$(nproc):8)) && echo "NPROC_CPU" $NPROC_CPU && echo "NPROC_GPU" $NPROC_GPU 99bedd5dcaSJeremy L Thompson - echo "-------------- CC ------------------" && $CC --version 100bedd5dcaSJeremy L Thompson # Libraries 101bedd5dcaSJeremy L Thompson # -- libCEED 102bedd5dcaSJeremy L Thompson - echo "-------------- libCEED -------------" 103bedd5dcaSJeremy L Thompson - export CEED_DIR=/projects/honee/libCEED-cpu && git -C $CEED_DIR -c safe.directory=$CEED_DIR describe && make -C $CEED_DIR info 104bedd5dcaSJeremy L Thompson # -- PETSc 105bedd5dcaSJeremy L Thompson - echo "-------------- PETSc ---------------" 106bedd5dcaSJeremy L Thompson - export PETSC_DIR=/projects/honee/petsc 107bedd5dcaSJeremy L Thompson - export PETSC_ARCH=arch-serial-cpu-clang && git -C $PETSC_DIR -c safe.directory=$PETSC_DIR describe && make -C $PETSC_DIR info 108bedd5dcaSJeremy L Thompson - export PETSC_OPTIONS='-malloc_debug no' # faster tests 109bedd5dcaSJeremy L Thompson - export LD_LIBRARY_PATH=$PETSC_DIR/lib PATH="$PATH:$PETSC_DIR/bin" # cgnsdiff 110bedd5dcaSJeremy L Thompson # ASAN 111bedd5dcaSJeremy L Thompson - echo "-------------- ASAN ----------------" 11203f5db93SJeremy L Thompson - echo "ASAN intentionlly skipped, known leaks" 11303f5db93SJeremy L Thompson # - export ASAN=1 AFLAGS="-fsanitize=address -fsanitize=leak" 114bedd5dcaSJeremy L Thompson - echo $AFLAGS 115bedd5dcaSJeremy L Thompson # HONEE 116bedd5dcaSJeremy L Thompson - echo "-------------- HONEE ---------------" && make info 117bedd5dcaSJeremy L Thompson - make clean 11874512b2dSJeremy L Thompson - make -j$NPROC_CPU 119bedd5dcaSJeremy L Thompson # Test suite 120bedd5dcaSJeremy L Thompson - echo "-------------- HONEE tests ---------" 121bedd5dcaSJeremy L Thompson - echo '[{"subject":"/","metrics":[{"name":"Transfer Size (KB)","value":"19.5","desiredSize":"smaller"},{"name":"Speed Index","value":0,"desiredSize":"smaller"},{"name":"Total Score","value":92,"desiredSize":"larger"},{"name":"Requests","value":4,"desiredSize":"smaller"}]}]' > performance.json 122bedd5dcaSJeremy L Thompson # -- Memcheck libCEED CPU backend, serial 123e97df35aSJeremy L Thompson - NPROC_TEST=1 make -k -j$((NPROC_CPU / NPROC_POOL)) CEED_BACKENDS="/cpu/self/memcheck" JUNIT_BATCH="cpu-serial-memcheck" junit search=navierstokes 124bedd5dcaSJeremy L Thompson # Report status 125bedd5dcaSJeremy L Thompson - touch .SUCCESS 126bedd5dcaSJeremy L Thompson artifacts: 127bedd5dcaSJeremy L Thompson paths: 128bedd5dcaSJeremy L Thompson - build/*.junit 129bedd5dcaSJeremy L Thompson reports: 130bedd5dcaSJeremy L Thompson junit: build/*.junit 131bedd5dcaSJeremy L Thompson performance: performance.json 132bedd5dcaSJeremy L Thompson expire_in: 28 days 133bedd5dcaSJeremy L Thompson 134bedd5dcaSJeremy L Thompson 135bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 136bedd5dcaSJeremy L Thompson# CPU testing on Noether 137bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 138bedd5dcaSJeremy L Thompsonnoether-cpu: 139f27266cbSJeremy L Thompson stage: test:stage-full 140bedd5dcaSJeremy L Thompson extends: .test 141bedd5dcaSJeremy L Thompson tags: 142bedd5dcaSJeremy L Thompson - noether 143bedd5dcaSJeremy L Thompson - shell 144bedd5dcaSJeremy L Thompson script: 145bedd5dcaSJeremy L Thompson - rm -f .SUCCESS 146bedd5dcaSJeremy L Thompson # Environment 147bedd5dcaSJeremy L Thompson - export COVERAGE=1 CC=gcc HIPCC=hipcc 148bedd5dcaSJeremy L Thompson - export NPROC_POOL=4 149bedd5dcaSJeremy L Thompson - echo "-------------- nproc ---------------" && NPROC_CPU=$(nproc) && NPROC_GPU=$(($(nproc)<8?$(nproc):8)) && echo "NPROC_CPU" $NPROC_CPU && echo "NPROC_GPU" $NPROC_GPU 150bedd5dcaSJeremy L Thompson - echo "-------------- CC ------------------" && $CC --version 151bedd5dcaSJeremy L Thompson - echo "-------------- GCOV ----------------" && gcov --version 152bedd5dcaSJeremy L Thompson - echo "-------------- HIPCC ---------------" && $HIPCC --version && export HIP_DIR=/opt/rocm 153bedd5dcaSJeremy L Thompson # Libraries 154bedd5dcaSJeremy L Thompson # -- libCEED 155bedd5dcaSJeremy L Thompson - echo "-------------- libCEED -------------" 156bedd5dcaSJeremy L Thompson - export CEED_DIR=/projects/honee/libCEED && git -C $CEED_DIR -c safe.directory=$CEED_DIR describe && make -C $CEED_DIR info 157bedd5dcaSJeremy L Thompson # -- PETSc 158bedd5dcaSJeremy L Thompson - echo "-------------- PETSc ---------------" 159bedd5dcaSJeremy L Thompson - export PETSC_DIR=/projects/honee/petsc 160bedd5dcaSJeremy L Thompson - export PETSC_ARCH=arch-parallel-gpu && git -C $PETSC_DIR -c safe.directory=$PETSC_DIR describe && make -C $PETSC_DIR info 161bedd5dcaSJeremy L Thompson - export PETSC_OPTIONS='-malloc_debug no' # faster tests 162bedd5dcaSJeremy L Thompson - export LD_LIBRARY_PATH=$PETSC_DIR/$PETSC_ARCH/lib PATH="$PATH:$PETSC_DIR/$PETSC_ARCH/bin" # cgnsdiff 163bedd5dcaSJeremy L Thompson # HONEE 164bedd5dcaSJeremy L Thompson - echo "-------------- HONEE ---------------" && make info 165bedd5dcaSJeremy L Thompson - make clean 16674512b2dSJeremy L Thompson - make -j$NPROC_CPU 167bedd5dcaSJeremy L Thompson # Test suite 168bedd5dcaSJeremy L Thompson - echo "-------------- HONEE tests ---------" 169bedd5dcaSJeremy L Thompson - echo '[{"subject":"/","metrics":[{"name":"Transfer Size (KB)","value":"19.5","desiredSize":"smaller"},{"name":"Speed Index","value":0,"desiredSize":"smaller"},{"name":"Total Score","value":92,"desiredSize":"larger"},{"name":"Requests","value":4,"desiredSize":"smaller"}]}]' > performance.json 170bedd5dcaSJeremy L Thompson # -- Fastest libCEED CPU backend, parallel 171a447840aSJeremy L Thompson - echo "Parallel tests skipped for now" 172869763b2SJeremy L Thompson - NPROC_TEST=1 make -k -j$((NPROC_CPU / NPROC_POOL / 1)) CEED_BACKENDS="/cpu/self" JUNIT_BATCH="cpu-serial" junit search=navierstokes 173bedd5dcaSJeremy L Thompson # Report status 174bedd5dcaSJeremy L Thompson - touch .SUCCESS 175bedd5dcaSJeremy L Thompson after_script: 176bedd5dcaSJeremy L Thompson - | 177bedd5dcaSJeremy L Thompson if [ -f .SUCCESS ]; then 178bedd5dcaSJeremy L Thompson gcovr --xml-pretty --exclude-unreachable-branches --print-summary -o coverage.xml; 179bedd5dcaSJeremy L Thompson fi 1802ef79a07SJeremy L Thompson coverage: '/^lines:\s+(\d+.\d\%)/' 181bedd5dcaSJeremy L Thompson artifacts: 182bedd5dcaSJeremy L Thompson paths: 183bedd5dcaSJeremy L Thompson - coverage.xml 184bedd5dcaSJeremy L Thompson - build/*.junit 185bedd5dcaSJeremy L Thompson reports: 186bedd5dcaSJeremy L Thompson coverage_report: 187bedd5dcaSJeremy L Thompson coverage_format: cobertura 188bedd5dcaSJeremy L Thompson path: coverage.xml 189bedd5dcaSJeremy L Thompson junit: build/*.junit 190bedd5dcaSJeremy L Thompson performance: performance.json 191bedd5dcaSJeremy L Thompson expire_in: 28 days 192bedd5dcaSJeremy L Thompson 193bedd5dcaSJeremy L Thompson 194bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 195*04c6cceaSJeremy L Thompson# CPU Int64 testing on Noether 196*04c6cceaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 197*04c6cceaSJeremy L Thompsonnoether-cpu-int64: 198*04c6cceaSJeremy L Thompson stage: test:stage-full 199*04c6cceaSJeremy L Thompson extends: .test 200*04c6cceaSJeremy L Thompson tags: 201*04c6cceaSJeremy L Thompson - noether 202*04c6cceaSJeremy L Thompson - shell 203*04c6cceaSJeremy L Thompson script: 204*04c6cceaSJeremy L Thompson - rm -f .SUCCESS 205*04c6cceaSJeremy L Thompson # Environment 206*04c6cceaSJeremy L Thompson - export COVERAGE=1 CC=gcc HIPCC=hipcc 207*04c6cceaSJeremy L Thompson - export NPROC_POOL=4 208*04c6cceaSJeremy L Thompson - echo "-------------- nproc ---------------" && NPROC_CPU=$(nproc) && NPROC_GPU=$(($(nproc)<8?$(nproc):8)) && echo "NPROC_CPU" $NPROC_CPU && echo "NPROC_GPU" $NPROC_GPU 209*04c6cceaSJeremy L Thompson - echo "-------------- CC ------------------" && $CC --version 210*04c6cceaSJeremy L Thompson - echo "-------------- GCOV ----------------" && gcov --version 211*04c6cceaSJeremy L Thompson - echo "-------------- HIPCC ---------------" && $HIPCC --version && export HIP_DIR=/opt/rocm 212*04c6cceaSJeremy L Thompson # Libraries 213*04c6cceaSJeremy L Thompson # -- libCEED 214*04c6cceaSJeremy L Thompson - echo "-------------- libCEED -------------" 215*04c6cceaSJeremy L Thompson - export CEED_DIR=/projects/honee/libCEED && git -C $CEED_DIR -c safe.directory=$CEED_DIR describe && make -C $CEED_DIR info 216*04c6cceaSJeremy L Thompson # -- PETSc 217*04c6cceaSJeremy L Thompson - echo "-------------- PETSc ---------------" 218*04c6cceaSJeremy L Thompson - export PETSC_DIR=/projects/honee/petsc 219*04c6cceaSJeremy L Thompson - export PETSC_ARCH=arch-serial-cpu-int64 && git -C $PETSC_DIR -c safe.directory=$PETSC_DIR describe && make -C $PETSC_DIR info 220*04c6cceaSJeremy L Thompson - export PETSC_OPTIONS='-malloc_debug no' # faster tests 221*04c6cceaSJeremy L Thompson - export LD_LIBRARY_PATH=$PETSC_DIR/$PETSC_ARCH/lib PATH="$PATH:$PETSC_DIR/$PETSC_ARCH/bin" # cgnsdiff 222*04c6cceaSJeremy L Thompson # HONEE 223*04c6cceaSJeremy L Thompson - echo "-------------- HONEE ---------------" && make info 224*04c6cceaSJeremy L Thompson - make clean 225*04c6cceaSJeremy L Thompson - make -j$NPROC_CPU 226*04c6cceaSJeremy L Thompson # Test suite 227*04c6cceaSJeremy L Thompson - echo "-------------- HONEE tests ---------" 228*04c6cceaSJeremy L Thompson - echo '[{"subject":"/","metrics":[{"name":"Transfer Size (KB)","value":"19.5","desiredSize":"smaller"},{"name":"Speed Index","value":0,"desiredSize":"smaller"},{"name":"Total Score","value":92,"desiredSize":"larger"},{"name":"Requests","value":4,"desiredSize":"smaller"}]}]' > performance.json 229*04c6cceaSJeremy L Thompson # -- Fastest libCEED CPU backend, serial 230*04c6cceaSJeremy L Thompson - NPROC_TEST=1 make -k -j$((NPROC_CPU / NPROC_POOL / 1)) CEED_BACKENDS="/cpu/self" JUNIT_BATCH="cpu-serial-int64" junit search=navierstokes 231*04c6cceaSJeremy L Thompson # Report status 232*04c6cceaSJeremy L Thompson - touch .SUCCESS 233*04c6cceaSJeremy L Thompson after_script: 234*04c6cceaSJeremy L Thompson - | 235*04c6cceaSJeremy L Thompson if [ -f .SUCCESS ]; then 236*04c6cceaSJeremy L Thompson gcovr --xml-pretty --exclude-unreachable-branches --print-summary -o coverage.xml; 237*04c6cceaSJeremy L Thompson fi 238*04c6cceaSJeremy L Thompson coverage: '/^lines:\s+(\d+.\d\%)/' 239*04c6cceaSJeremy L Thompson artifacts: 240*04c6cceaSJeremy L Thompson paths: 241*04c6cceaSJeremy L Thompson - coverage.xml 242*04c6cceaSJeremy L Thompson - build/*.junit 243*04c6cceaSJeremy L Thompson reports: 244*04c6cceaSJeremy L Thompson coverage_report: 245*04c6cceaSJeremy L Thompson coverage_format: cobertura 246*04c6cceaSJeremy L Thompson path: coverage.xml 247*04c6cceaSJeremy L Thompson junit: build/*.junit 248*04c6cceaSJeremy L Thompson performance: performance.json 249*04c6cceaSJeremy L Thompson expire_in: 28 days 250*04c6cceaSJeremy L Thompson 251*04c6cceaSJeremy L Thompson 252*04c6cceaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 253bedd5dcaSJeremy L Thompson# GPU testing on Noether 254bedd5dcaSJeremy L Thompson# ---------------------------------------------------------------------------------------- 255bedd5dcaSJeremy L Thompsonnoether-gpu: 256f27266cbSJeremy L Thompson stage: test:stage-full 257bedd5dcaSJeremy L Thompson extends: .test 258bedd5dcaSJeremy L Thompson tags: 259bedd5dcaSJeremy L Thompson - noether 260bedd5dcaSJeremy L Thompson - shell 261bedd5dcaSJeremy L Thompson script: 262bedd5dcaSJeremy L Thompson - rm -f .SUCCESS 263bedd5dcaSJeremy L Thompson # Environment 264bedd5dcaSJeremy L Thompson - export COVERAGE=1 CC=gcc HIPCC=hipcc 265bedd5dcaSJeremy L Thompson - export NPROC_POOL=4 266bedd5dcaSJeremy L Thompson - echo "-------------- nproc ---------------" && NPROC_CPU=$(nproc) && NPROC_GPU=$(($(nproc)<8?$(nproc):8)) && echo "NPROC_CPU" $NPROC_CPU && echo "NPROC_GPU" $NPROC_GPU 267bedd5dcaSJeremy L Thompson - echo "-------------- CC ------------------" && $CC --version 268bedd5dcaSJeremy L Thompson - echo "-------------- GCOV ----------------" && gcov --version 269bedd5dcaSJeremy L Thompson - echo "-------------- HIPCC ---------------" && $HIPCC --version && export HIP_DIR=/opt/rocm 270bedd5dcaSJeremy L Thompson # Libraries 271bedd5dcaSJeremy L Thompson # -- libCEED 272bedd5dcaSJeremy L Thompson - echo "-------------- libCEED -------------" 273bedd5dcaSJeremy L Thompson - export CEED_DIR=/projects/honee/libCEED && git -C $CEED_DIR -c safe.directory=$CEED_DIR describe && make -C $CEED_DIR info 274bedd5dcaSJeremy L Thompson # -- PETSc 275bedd5dcaSJeremy L Thompson - echo "-------------- PETSc ---------------" 276bedd5dcaSJeremy L Thompson - export PETSC_DIR=/projects/honee/petsc 277bedd5dcaSJeremy L Thompson - export PETSC_ARCH=arch-parallel-gpu && git -C $PETSC_DIR -c safe.directory=$PETSC_DIR describe && make -C $PETSC_DIR info 278bedd5dcaSJeremy L Thompson - export PETSC_OPTIONS='-malloc_debug no' # faster tests 279bedd5dcaSJeremy L Thompson - export LD_LIBRARY_PATH=$PETSC_DIR/$PETSC_ARCH/lib PATH="$PATH:$PETSC_DIR/$PETSC_ARCH/bin" # cgnsdiff 280bedd5dcaSJeremy L Thompson # HONEE 281bedd5dcaSJeremy L Thompson - echo "-------------- HONEE ---------------" && make info 282bedd5dcaSJeremy L Thompson - make clean 28374512b2dSJeremy L Thompson - make -j$NPROC_CPU 284bedd5dcaSJeremy L Thompson # Test suite 285bedd5dcaSJeremy L Thompson - echo "-------------- HONEE tests ---------" 286bedd5dcaSJeremy L Thompson - echo '[{"subject":"/","metrics":[{"name":"Transfer Size (KB)","value":"19.5","desiredSize":"smaller"},{"name":"Speed Index","value":0,"desiredSize":"smaller"},{"name":"Total Score","value":92,"desiredSize":"larger"},{"name":"Requests","value":4,"desiredSize":"smaller"}]}]' > performance.json 287bedd5dcaSJeremy L Thompson # -- Fastest libCEED HIP backend, serial 288b6ee1185SJeremy L Thompson # Note: /shared is faster due to /gen JiT time for CeedOperators overwhelming runtime improvements at these problem sizes 289e97df35aSJeremy L Thompson - NPROC_TEST=1 make -k -j$((NPROC_GPU / NPROC_POOL / 1)) CEED_BACKENDS="/gpu/hip/shared" JUNIT_BATCH="hip-serial" junit search=navierstokes 290bedd5dcaSJeremy L Thompson # Report status 291bedd5dcaSJeremy L Thompson - touch .SUCCESS 292bedd5dcaSJeremy L Thompson after_script: 293bedd5dcaSJeremy L Thompson - | 294bedd5dcaSJeremy L Thompson if [ -f .SUCCESS ]; then 295bedd5dcaSJeremy L Thompson gcovr --xml-pretty --exclude-unreachable-branches --print-summary -o coverage.xml; 296bedd5dcaSJeremy L Thompson fi 2972ef79a07SJeremy L Thompson coverage: '/^lines:\s+(\d+.\d\%)/' 298bedd5dcaSJeremy L Thompson artifacts: 299bedd5dcaSJeremy L Thompson paths: 300bedd5dcaSJeremy L Thompson - coverage.xml 301bedd5dcaSJeremy L Thompson - build/*.junit 302bedd5dcaSJeremy L Thompson reports: 303bedd5dcaSJeremy L Thompson coverage_report: 304bedd5dcaSJeremy L Thompson coverage_format: cobertura 305bedd5dcaSJeremy L Thompson path: coverage.xml 306bedd5dcaSJeremy L Thompson junit: build/*.junit 307bedd5dcaSJeremy L Thompson performance: performance.json 308bedd5dcaSJeremy L Thompson expire_in: 28 days 309a3c4661bSJames Wright 310a3c4661bSJames Wright 311a3c4661bSJames Wright# ---------------------------------------------------------------------------------------- 312a3c4661bSJames Wright# Build documentation 313a3c4661bSJames Wright# ---------------------------------------------------------------------------------------- 314a3c4661bSJames Wrightdocs-review: 315a3c4661bSJames Wright stage: test:docs 316a3c4661bSJames Wright tags: 317a3c4661bSJames Wright - noether 318a3c4661bSJames Wright - docker 319a3c4661bSJames Wright extends: 320a3c4661bSJames Wright - .docs 321a3c4661bSJames Wright - .test-basic 322a3c4661bSJames Wright interruptible: true 323a3c4661bSJames Wright script: 324a3c4661bSJames Wright - export PETSC_DIR=/projects/honee/petsc PETSC_ARCH=arch-parallel-gpu CEED_DIR=/projects/honee/libCEED 325a3c4661bSJames Wright - git submodule update --init 326a3c4661bSJames Wright - make doc-html pkgconf=true DOXYGENOPTS= SPHINXOPTS=-W 327a3c4661bSJames Wright - mv doc/build/html public 328a3c4661bSJames Wright artifacts: 329a3c4661bSJames Wright paths: 330a3c4661bSJames Wright - public 331a3c4661bSJames Wright expire_in: 28 days 332a3c4661bSJames Wright environment: 333a3c4661bSJames Wright name: review/$CI_COMMIT_REF_NAME 334a3c4661bSJames Wright url: https://$CI_PROJECT_NAMESPACE.gitlab.io/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/public/index.html 335a3c4661bSJames Wright 336a3c4661bSJames Wright 337a3c4661bSJames Wright# ---------------------------------------------------------------------------------------- 338a3c4661bSJames Wright# Deploy documentation using GitLab pages 339a3c4661bSJames Wright# ---------------------------------------------------------------------------------------- 340a3c4661bSJames Wrightpages: # this job name has special meaning to GitLab 341a3c4661bSJames Wright stage: deploy 342a3c4661bSJames Wright tags: 343a3c4661bSJames Wright - noether 344a3c4661bSJames Wright - docker 345a3c4661bSJames Wright extends: .docs 346a3c4661bSJames Wright interruptible: false 347a3c4661bSJames Wright script: 348a3c4661bSJames Wright - git submodule update --init 349a3c4661bSJames Wright - make doc-dirhtml pkgconf=true DOXYGENOPTS= 350a3c4661bSJames Wright - mv doc/build/dirhtml public 351a3c4661bSJames Wright only: 352a3c4661bSJames Wright - main 353a3c4661bSJames Wright artifacts: 354a3c4661bSJames Wright paths: 355a3c4661bSJames Wright - public 356