oneMKL
oneMKL copied to clipboard
Building tests with both cuBLAS and cuRAND enabled hits compilation issues
Summary
Trying to build the tests with both cuBLAS and cuRAND backends enabled hit compilation issues.
Version
Using the latest version: 19c43b0f68dcaba5bc518d5becdfa0097bebfa7c
Environment
This should be pretty straightforward to reproduce in any environment but let me know if you need more details for this section.
Steps to reproduce
The issue happens if all of these are provided:
-
-DENABLE_CUBLAS_BACKEND=True
-
-DENABLE_CURAND_BACKEND=True
-
-DBUILD_FUNCTIONAL_TESTS=True
Observed behavior
This was discussed in #91 and https://github.com/oneapi-src/oneMKL/pull/126#discussion_r704654552, however it looks like that ticket fixed the issue for building one of them but not both of them at the same time.
TARGET_DOMAINS
also doesn't seem to work properly with cuBLAS and cuRAND, it always gets reset here:
- https://github.com/oneapi-src/oneMKL/blob/develop/CMakeLists.txt#L108
Because it's checking the specified target domains against a domain list that is only populated when using the MKLCPU or MKLGPU backends.
I tried hacking that part of the CMake to let a blas;rng
target domain list go through, however this still seemed to fail when building the tests.
Expected behavior
I see two main possible outcomes for this:
- Mark this as unsupported and make CMake throw out an error if someone is trying to build this configuration
- Fix the build issue/CMake so that this combination is supported