CUDA APIs不支持列表(v1.6)
此列表目前对比基准为CUDA 12.3,CUDA 12.4及以后新增CUDA APIs不在此列表范围内。
下表只列举了目前不支持的CUDA Runtime APIs,不在此表格中的APIs均支持。
CUDA Runtime APIs不计算C++ API Routines支持(全部实现在头文件中),目前已导出API符号261个,未支持API 89 个,支持率估算 74.57%.
不支持API可分为以下几类(详见CUDA Runtime小节):
涉及到Graphics 74个;
涉及到硬件高级特性需求 10 个;
涉及到无需求Features 5个;
CUDA Driver APIs目前已导出API符号474个,未支持API 87个,支持率估算84.49%.
不支持API可分为以下几类(详见CUDA Driver小节):
涉及到Graphics 62个;
涉及到硬件高级特性需求17个;
涉及到无需求Features 8个;
CUDA Runtime
对齐到 CUDA Runtime 12.3(对于CUDA Runtime 12.3 Spec中标注为[DEPRECATED]模块整体不加以支持,此处不列出),除以下API不支持外:
功能模块 | CUDA Runtime API 名称 | 备注 |
Device Management | RDMA Flush,不影响RDMA使用 | |
NvSci Lib,目前无实际需求 | ||
Graphics相关,AI场景无需求 | ||
External Resource Interoperability | Graphics API 交互相关,目前只支持CUDA API | |
Execution Control | deprecated as of CUDA 7.5 永不支持 | |
deprecated as of CUDA 7.5 永不支持 | ||
Occupancy | cluster相关 | |
Memory Management | 除cudaMemAdvise_v2外,都属于Array相关,AI场景无需求 | |
OpenGL Interoperability | Graphics相关,AI场景无需求 | |
Direct3D 9 Interoperability | ||
Direct3D 10 Interoperability | ||
Direct3D 11 Interoperability | ||
VDPAU Interoperability | ||
EGL Interoperability | ||
Graphics Interoperability | ||
Surface Object Management | ||
Graph Management | device funciton 需要CDP支持 | |
主要为Graphics相关,AI场景无需求 | ||
此外还存在少量的API有部分枚举不支持的情况,未列出,以实际运行返回cudaErrorNotSupported或者cudaErrorInvalidValue结果为准。
CUDA Driver
对齐到 CUDA Driver 12.3(对于CUDA Driver 12.3 Spec中标注为[DEPRECATED]模块整体不加以支持,此处不列出),除以下API不支持外:
功能模块 | CUDA Driver API 名称 |
Device Management | |
Context Management | |
Library Management | |
Memory Management | |
Multicast Object Management | |
External Resource Interoperability | |
Execution Control | |
Graph Management | |
Occupancy | |
Surface Object Management | |
Tensor Map Object Managment | |
Graphics Interoperability | |
Coredump Attributes Control API | |
VDPAU Interoperability | |
EGL Interoperability | |
此外还存在少量的API有部分枚举不支持的情况,未列出,以实际运行返回CUDA_ERROR_NOT_SUPPORTED或者CUDA_ERROR_INVALID_VALUE结果为准。