mirror of
https://github.com/reactos/CMake.git
synced 2024-12-04 09:54:15 +00:00
CUDA: Avoid using deprecated cublas_device to identify device lib dirs
Use `curand_static` to identify directories containing device libraries because `cublas_device` is deprecated and will be removed in the future. Issue: #18290
This commit is contained in:
parent
c4ab098097
commit
122c79748c
@ -185,7 +185,7 @@ if(__IMPLICT_DLINK_DIRS)
|
||||
endif()
|
||||
set(__IMPLICT_DLINK_FLAGS )
|
||||
foreach(dir ${__IMPLICT_DLINK_DIRS})
|
||||
if(EXISTS "${dir}/libcublas_device.a")
|
||||
if(EXISTS "${dir}/libcurand_static.a")
|
||||
string(APPEND __IMPLICT_DLINK_FLAGS " -L\"${dir}\"")
|
||||
endif()
|
||||
endforeach()
|
||||
|
@ -44,7 +44,7 @@ if(__IMPLICT_DLINK_DIRS)
|
||||
endif()
|
||||
set(__IMPLICT_DLINK_FLAGS )
|
||||
foreach(dir ${__IMPLICT_DLINK_DIRS})
|
||||
if(EXISTS "${dir}/cublas_device.lib")
|
||||
if(EXISTS "${dir}/curand_static.lib")
|
||||
string(APPEND __IMPLICT_DLINK_FLAGS " -L\"${dir}\"")
|
||||
endif()
|
||||
endforeach()
|
||||
|
@ -3,6 +3,9 @@
|
||||
#include <cuda_runtime.h>
|
||||
#include <iostream>
|
||||
|
||||
// this test only makes sense for versions of CUDA that ships
|
||||
// static libraries that have separable compilation device symbols
|
||||
#if __CUDACC_VER_MAJOR__ <= 9
|
||||
__global__ void deviceCublasSgemm(int n, float alpha, float beta,
|
||||
const float* d_A, const float* d_B,
|
||||
float* d_C)
|
||||
@ -22,6 +25,7 @@ __global__ void deviceCublasSgemm(int n, float alpha, float beta,
|
||||
|
||||
cublasDestroy(cnpHandle);
|
||||
}
|
||||
#endif
|
||||
|
||||
int choose_cuda_device()
|
||||
{
|
||||
@ -63,6 +67,7 @@ int main(int argc, char** argv)
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if __CUDACC_VER_MAJOR__ <= 9
|
||||
// initial values that will make sure that the cublasSgemm won't actually
|
||||
// do any work
|
||||
int n = 0;
|
||||
@ -72,6 +77,7 @@ int main(int argc, char** argv)
|
||||
float* d_B = nullptr;
|
||||
float* d_C = nullptr;
|
||||
deviceCublasSgemm<<<1, 1>>>(n, alpha, beta, d_A, d_B, d_C);
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user