Skip to content
Snippets Groups Projects

[CI] Split native test into RV an non-RV tests.

Merged Dr. Jorrit Fahlke requested to merge ci-rv-norv into master
1 file
+ 145
74
Compare changes
  • Side-by-side
  • Inline
+ 145
74
@@ -7,7 +7,8 @@
stages:
- source
- build
- build-pacxx
- build-samples
- test
######################################################################
@@ -63,12 +64,11 @@ source-samples:
######################################################################
#
# Build: build pacxx using the base image
# Build-PACXX: build pacxx using the base image
#
build-native:
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
stage: build
.build-pacxx: &build-pacxx
stage: build-pacxx
variables:
GIT_STRATEGY: none
dependencies:
@@ -83,107 +83,186 @@ build-native:
-DCMAKE_INSTALL_PREFIX="${PACXX_INSTALL}" )
- make -C build -j$(nproc) install
- cp llvm/repoversions install/
tags:
- hpc2seci
artifacts:
paths:
- install/
build-cuda:
build-pacxx-native:
<<: *build-pacxx
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
tags:
- hpc2seci
build-pacxx-cuda:
<<: *build-pacxx
image: registry.dune-project.org/joe/pacxx-docker:base-cuda.master
stage: build
tags:
- hpc2seci-nvidia
######################################################################
#
# Build-Samples: build samples using the just built pacxx
#
.build-samples: &build-samples
stage: build-samples
variables:
GIT_STRATEGY: none
dependencies:
- source-pacxx
script:
- cat llvm/repoversions
- export PACXX_INSTALL=$(pwd)/install
- mkdir build
- ( cd build &&
cmake ../llvm -DBUILD_SHARED_LIBS=ON -DLLVM_ENABLE_RTTI=ON -DLLVM_ENABLE_CXX1Y=ON
-DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS_RELEASE="-O3"
-DCMAKE_INSTALL_PREFIX="${PACXX_INSTALL}" )
- make -C build -j$(nproc) install
- cp llvm/repoversions install/
PACXX_FORCE_DEFAULT_RT: 1
before_script:
- cat install/repoversions
- cat samples/repoversions
- export PATH=$(pwd)/install/bin:$PATH
- mkdir bsamples
- cd bsamples
tags:
- hpc2seci-nvidia
- hpc2seci
artifacts:
paths:
- install/
- bsamples/
build-samples-native-make-debug:
<<: *build-samples
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
variables:
PACXX_DEFAULT_RT: 1 # native
dependencies:
- build-pacxx-native
- source-samples
script:
- cmake ../samples -DCMAKE_CXX_COMPILER=pacxx++ -DCMAKE_BUILD_TYPE=Debug
- make -j$(nproc)
tags:
- hpc2seci
build-samples-native-ninja-release:
<<: *build-samples
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
variables:
PACXX_DEFAULT_RT: 1 # native
dependencies:
- build-pacxx-native
- source-samples
script:
- cmake ../samples -G Ninja -DCMAKE_CXX_COMPILER=pacxx++ -DCMAKE_BUILD_TYPE=Release
- ninja
build-samples-cuda-make-debug:
<<: *build-samples
image: registry.dune-project.org/joe/pacxx-docker:base-cuda.master
variables:
PACXX_DEFAULT_RT: 0 # Cuda
dependencies:
- build-pacxx-cuda
- source-samples
script:
- cmake ../samples -DCMAKE_CXX_COMPILER=pacxx++ -DCMAKE_BUILD_TYPE=Debug
- make -j$(nproc)
build-samples-cuda-make-release:
<<: *build-samples
image: registry.dune-project.org/joe/pacxx-docker:base-cuda.master
variables:
PACXX_DEFAULT_RT: 0 # Cuda
dependencies:
- build-pacxx-cuda
- source-samples
script:
- cmake ../samples -DCMAKE_CXX_COMPILER=pacxx++ -DCMAKE_BUILD_TYPE=Release
- make -j$(nproc)
######################################################################
#
# Test: test the just built pacxx
#
test-native-make-debug:
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
.test: &test
stage: test
variables:
GIT_STRATEGY: none
PACXX_FORCE_DEFAULT_RT: 1
before_script:
- cat install/repoversions
- cat samples/repoversions
- export PATH=$(pwd)/install/bin:$PATH
- cd bsamples
test-native-norv-debug:
<<: *test
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
variables:
PACXX_DEFAULT_RT: 1 # native
PACXX_DISABLE_RV: 1 # disable region vectorizer
dependencies:
- build-native
- build-pacxx-native
- source-samples
- build-samples-native-make-debug
script:
- cat install/repoversions
- cat samples/repoversions
- export PATH=$(pwd)/install/bin:$PATH
- mkdir build
- cd build
- cmake ../samples -DCMAKE_CXX_COMPILER=pacxx++ -DCMAKE_BUILD_TYPE=Debug
- make -j$(nproc)
- ctest -j$(nproc) -LE '^native-debug-(known-failure|slow)$' --output-on-failure
- ctest -j$(nproc) -L '^native-debug-known-failure$' --output-on-failure || true
- ctest -j$(nproc) -LE '^(native|norv)-debug-(known-failure|slow)$' --output-on-failure
- ctest -j$(nproc) -L '^(native|norv)-debug-known-failure$' --output-on-failure || true
- ": The following tests were skipped because they are known to be slow"
- ctest -N -L '^native-debug-slow$'
- ctest -N -L '^(native|norv)-debug-slow$'
tags:
- hpc2seci
test-native-ninja-release:
test-native-norv-release:
<<: *test
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
stage: test
variables:
GIT_STRATEGY: none
PACXX_FORCE_DEFAULT_RT: 1
PACXX_DEFAULT_RT: 1 # native
PACXX_DISABLE_RV: 1 # disable region vectorizer
dependencies:
- build-native
- build-pacxx-native
- source-samples
- build-samples-native-ninja-release
script:
- cat install/repoversions
- cat samples/repoversions
- export PATH=$(pwd)/install/bin:$PATH
- mkdir build
- cd build
- cmake ../samples -G Ninja -DCMAKE_CXX_COMPILER=pacxx++ -DCMAKE_BUILD_TYPE=Release
- ninja
- ctest -j$(nproc) -LE '^native-release-known-failure$' --output-on-failure
- ctest -j$(nproc) -L '^native-release-known-failure$' --output-on-failure || true
- ctest -j$(nproc) -LE '^(native|norv)-release-known-failure$' --output-on-failure
- ctest -j$(nproc) -L '^(native|norv)-release-known-failure$' --output-on-failure || true
tags:
- hpc2seci
test-native-rv-debug:
<<: *test
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
variables:
PACXX_DEFAULT_RT: 1 # native
dependencies:
- build-pacxx-native
- source-samples
- build-samples-native-make-debug
script:
- ctest -j$(nproc) -LE '^(native|rv)-debug-(known-failure|slow)$' --output-on-failure
- ctest -j$(nproc) -L '^(native|rv)-debug-known-failure$' --output-on-failure || true
- ": The following tests were skipped because they are known to be slow"
- ctest -N -L '^(native|rv)-debug-slow$'
tags:
- hpc2seci
test-native-rv-release:
<<: *test
image: registry.dune-project.org/joe/pacxx-docker:base-native.master
variables:
PACXX_DEFAULT_RT: 1 # native
dependencies:
- build-pacxx-native
- source-samples
- build-samples-native-ninja-release
script:
- ctest -j$(nproc) -LE '^(native|rv)-release-known-failure$' --output-on-failure
- ctest -j$(nproc) -L '^(native|rv)-release-known-failure$' --output-on-failure || true
tags:
- hpc2seci
test-cuda-make-debug:
test-cuda-debug:
<<: *test
image: registry.dune-project.org/joe/pacxx-docker:base-cuda.master
stage: test
variables:
GIT_STRATEGY: none
PACXX_FORCE_DEFAULT_RT: 1
PACXX_DEFAULT_RT: 0 # Cuda
dependencies:
- build-cuda
- build-pacxx-cuda
- source-samples
- build-samples-cuda-make-debug
script:
- cat install/repoversions
- cat samples/repoversions
- export PATH=$(pwd)/install/bin:$PATH
- mkdir build
- cd build
- cmake ../samples -DCMAKE_CXX_COMPILER=pacxx++ -DCMAKE_BUILD_TYPE=Debug
- make -j$(nproc)
- ctest -j$(nproc) -LE '^cuda-debug-(known-failure|slow)$' --output-on-failure
- ctest -j$(nproc) -L '^cuda-debug-known-failure$' --output-on-failure || true
- ": The following tests were skipped because they are known to be slow"
@@ -191,24 +270,16 @@ test-cuda-make-debug:
tags:
- hpc2seci-nvidia
test-cuda-make-release:
test-cuda-release:
<<: *test
image: registry.dune-project.org/joe/pacxx-docker:base-cuda.master
stage: test
variables:
GIT_STRATEGY: none
PACXX_FORCE_DEFAULT_RT: 1
PACXX_DEFAULT_RT: 0 # Cuda
dependencies:
- build-cuda
- build-pacxx-cuda
- source-samples
- build-samples-cuda-make-release
script:
- cat install/repoversions
- cat samples/repoversions
- export PATH=$(pwd)/install/bin:$PATH
- mkdir build
- cd build
- cmake ../samples -DCMAKE_CXX_COMPILER=pacxx++ -DCMAKE_BUILD_TYPE=Release
- make -j$(nproc)
- ctest -j$(nproc) -LE '^cuda-release-known-failure$' --output-on-failure
- ctest -j$(nproc) -L '^cuda-release-known-failure$' --output-on-failure || true
tags:
Loading