Describe the bug
Compiling CUTLASS with an NVCC version (12.6) newer than the driver version (12.4) causes this error:
undefined symbol: cudaGetDriverEntryPointByVersion, version libcudart.so.12
This is because of this compile-time check:
|
#if ((__CUDACC_VER_MAJOR__ >= 13) || \ |
|
((__CUDACC_VER_MAJOR__ == 12) && (__CUDACC_VER_MINOR__ >= 5))) \ |
|
|
|
#define CUTLASS_CUDA_DRIVER_WRAPPER_DECL(func, ver) \ |
|
template <typename... Args> \ |
|
CUresult call_##func(Args... args) { \ |
|
cudaDriverEntryPointQueryResult cuda_status; \ |
|
void* pfn = nullptr; \ |
|
cudaError_t cuda_err = cudaGetDriverEntryPointByVersion( \ |
cudaGetDriverEntryPointByVersion has been added in the driver after version 12.5, but the check is on the NVCC version, which can be different from the driver version.
Can we use cudaGetDriverEntryPoint for all driver versions instead?