oneMKL icon indicating copy to clipboard operation
oneMKL copied to clipboard

Building tests with both cuBLAS and cuRAND enabled hits compilation issues

Open npmiller opened this issue 3 years ago • 0 comments

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

npmiller avatar Sep 09 '21 09:09 npmiller