superlu_dist icon indicating copy to clipboard operation
superlu_dist copied to clipboard

v7.1 is incompatible with CUDA 11.5.0

Open olupton opened this issue 4 years ago • 3 comments

When I added new CUDA versions to the Spack package manager (https://github.com/spack/spack/pull/26892), the CI tried to build [email protected] against [email protected] and failed: https://gitlab.spack.io/spack/spack/-/jobs/1161338:

 #error CUB requires a definition of CUB_NS_QUALIFIER when CUB_NS_PREFIX/POSTFIX are defined.
  ^~~~~
SRC/CMakeFiles/superlu_dist-static.dir/build.make:1184: recipe for target 'SRC/CMakeFiles/superlu_dist-static.dir/dsuperlu_gpu.cu.o' failed

(full log: spack-build-out-24.txt)

This may be because of the breaking change noted in https://github.com/NVIDIA/cub/releases/tag/1.14.0.

olupton avatar Oct 22 '21 14:10 olupton

If it can help, with this small patch I've been able to make it compile with CUDA 11.5

--- orig/SRC/cub/util_namespace.cuh	2021-11-09 15:24:45.617733222 +0100
+++ new/SRC/cub/util_namespace.cuh	2021-11-09 15:25:07.310768977 +0100
@@ -44,3 +44,7 @@
 #ifndef CUB_NS_POSTFIX
 #define CUB_NS_POSTFIX
 #endif
+
+#ifndef CUB_NS_QUALIFIER
+#define CUB_NS_QUALIFIER ::cub
+#endif

galeone avatar Nov 09 '21 14:11 galeone

@piyush314 Please review this.

xiaoyeli avatar Nov 09 '21 17:11 xiaoyeli

We only needed a scan function from CUB. Recently we implemented our own scan, so we removed the dependency on CUB. This new code is in 'master' branch. We will soon package a v7.2.0 release.

xiaoyeli avatar Nov 20 '21 06:11 xiaoyeli