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.
The CI should test the following things
build and run with the accelerators: serial CPU, OpenMP blocks, CUDA, HIP
integration test -> use vikunja in an external CMake project with
find_package()
add_subdirectory()