alpaka-group / vikunja

Vikunja is a performance portable algorithm library that defines functions operating on ranges of elements for a variety of purposes . It supports the execution on multi-core CPUs and various GPUs. Vikunja uses alpaka to implement platform-independent primitives such as reduce or transform.
https://vikunja.readthedocs.io/en/latest/
Mozilla Public License 2.0
14 stars 5 forks source link

Add CI job generator to improve test coverage #80

Closed SimeonEhrig closed 1 year ago

SimeonEhrig commented 2 years ago

The job generator should heavily improve the test coverage and should maintenance much easier.

The PR implements also the following things:

The PR also includes fixes for alpaka 0.9 from the PR #79 . The PR could not be merged, because it need some modifications of the CI.

SimeonEhrig commented 2 years ago

@psychocoderHPC During my work on the new CI I triggered the following error with Clang 7 and C++ 20 (-std=c++2a): https://gitlab.com/hzdr/crp/vikunja/-/jobs/2720300423

I found following answer: https://github.com/boostorg/smart_ptr/issues/87 TLTR: Boost gives no guaranties for compilers which use the flag -std=c++2a, because it is experimental. For vikunja, I added the rule, that forbid job combinations with this compiler flag. Should I overtake it to the general rules for alpaka projects?