Add missing "CUDA_ERROR_UNSUPPORTED_PTX_VERSION" to CUEW
This is required for Cycles to report a meaningful error message when it fails to load a PTX module created with a newer CUDA toolkit version than the driver supports. Fix crash when kernel loading failed (T91879) Ref T91879
This commit is contained in:
parent
ac42e58e31
commit
31dfdb6379
Notes:
blender-bot
2023-02-14 00:37:17 +01:00
Referenced by issue #88449: Blender LTS: Maintenance Task 2.93 Referenced by issue #88449, Blender LTS: Maintenance Task 2.93 Referenced by issue #91879, Cycles - Rendering on a Nvidia A100 crashes/fails on Google Colab
|
@ -609,6 +609,7 @@ typedef enum cudaError_enum {
|
|||
CUDA_ERROR_INVALID_GRAPHICS_CONTEXT = 219,
|
||||
CUDA_ERROR_NVLINK_UNCORRECTABLE = 220,
|
||||
CUDA_ERROR_JIT_COMPILER_NOT_FOUND = 221,
|
||||
CUDA_ERROR_UNSUPPORTED_PTX_VERSION = 222,
|
||||
CUDA_ERROR_INVALID_SOURCE = 300,
|
||||
CUDA_ERROR_FILE_NOT_FOUND = 301,
|
||||
CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND = 302,
|
||||
|
|
|
@ -736,6 +736,7 @@ const char *cuewErrorString(CUresult result) {
|
|||
case CUDA_ERROR_INVALID_GRAPHICS_CONTEXT: return "Invalid graphics context";
|
||||
case CUDA_ERROR_NVLINK_UNCORRECTABLE: return "Nvlink uncorrectable";
|
||||
case CUDA_ERROR_JIT_COMPILER_NOT_FOUND: return "Jit compiler not found";
|
||||
case CUDA_ERROR_UNSUPPORTED_PTX_VERSION: return "Unsupported PTX version";
|
||||
case CUDA_ERROR_INVALID_SOURCE: return "Invalid source";
|
||||
case CUDA_ERROR_FILE_NOT_FOUND: return "File not found";
|
||||
case CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND: return "Link to a shared object failed to resolve";
|
||||
|
|
|
@ -583,9 +583,9 @@ bool CUDADevice::load_kernels(const DeviceRequestedFeatures &requested_features)
|
|||
|
||||
if (result == CUDA_SUCCESS) {
|
||||
reserve_local_memory(requested_features);
|
||||
}
|
||||
|
||||
load_functions();
|
||||
load_functions();
|
||||
}
|
||||
|
||||
return (result == CUDA_SUCCESS);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue