Skip to content

[BUG] undefined symbol: cudaGetDriverEntryPointByVersion #2079

@danthe3rd

Description

@danthe3rd

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?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions