CUBLAS API support status (v1.7)
cublas
This table compares the support status of CUBLAS APIs to cublas 11.9.2.
Most APIs used in common Neural Network (NN) scenarios are supported and optimized.
All APIs can be supported by software and have no current PPU hardware limitations. Additional API support will be added in future software versions based on priority.
The current API support rate is 30.7% (89 out of 290). Unsupported APIs fall into the following main categories:
Number of data types: 131
Special matrix types (such as symmetric, compressed, and triangular): 36
Helper functions (such as set/get and memcpy): 18
Batched gemv: 12
Uncommon algorithms (such as matrix addition geam and matrix inversion matinv): 4
Because AI scenarios do not involve complex data types or special matrix types, the API support rate for AI scenarios is 72.4% (89 out of 123).
API | cublas 11.9.2 | PPU 1.7 | Description |
cublasCreate_v2 | Yes | Yes | |
cublasDestroy_v2 | Yes | Yes | |
cublasGetProperty | Yes | Yes | |
cublasSetStream_v2 | Yes | Yes | |
cublasGetStream_v2 | Yes | Yes | |
cublasGetMathMode | Yes | Yes | |
cublasSetMathMode | Yes | Yes | |
cublasGetPointerMode_v2 | Yes | Yes | |
cublasSetPointerMode_v2 | Yes | Yes | |
cublasSetWorkspace_v2 | Yes | Yes | |
cublasGetStatusString | Yes | Yes | |
cublasIamaxEx | Yes | Yes | |
cublasIsamax_v2 | Yes | Yes | |
cublasIdamax_v2 | Yes | Yes | |
cublasIaminEx | Yes | Yes | |
cublasIsamin_v2 | Yes | Yes | |
cublasIdamin_v2 | Yes | Yes | |
cublasAsumEx | Yes | Yes | |
cublasSasum_v2 | Yes | Yes | |
cublasDasum_v2 | Yes | Yes | |
cublasAxpyEx | Yes | Yes | |
cublasSaxpy_v2 | Yes | Yes | |
cublasDaxpy_v2 | Yes | Yes | |
cublasCopyEx | Yes | Yes | |
cublasScopy_v2 | Yes | Yes | |
cublasDcopy_v2 | Yes | Yes | |
cublasDotEx | Yes | Yes | |
cublasSdot_v2 | Yes | Yes | |
cublasDdot_v2 | Yes | Yes | |
cublasNrm2Ex | Yes | Yes | |
cublasSnrm2_v2 | Yes | Yes | |
cublasDnrm2_v2 | Yes | Yes | |
cublasRotEx | Yes | Yes | |
cublasSrot_v2 | Yes | Yes | |
cublasDrot_v2 | Yes | Yes | |
cublasRotgEx | Yes | Yes | |
cublasSrotg_v2 | Yes | Yes | |
cublasDrotg_v2 | Yes | Yes | |
cublasRotmEx | Yes | Yes | |
cublasSrotm_v2 | Yes | Yes | |
cublasDrotm_v2 | Yes | Yes | |
cublasRotmgEx | Yes | Yes | |
cublasSrotmg_v2 | Yes | Yes | |
cublasDrotmg_v2 | Yes | Yes | |
cublasScalEx | Yes | Yes | |
cublasSscal_v2 | Yes | Yes | |
cublasDscal_v2 | Yes | Yes | |
cublasSwapEx | Yes | Yes | |
cublasSswap_v2 | Yes | Yes | |
cublasDswap_v2 | Yes | Yes | |
cublasSgemv_v2 | Yes | Yes | |
cublasDgemv_v2 | Yes | Yes | |
cublasSgemm_v2 | Yes | Yes | |
cublasDgemm_v2 | Yes | Yes | |
cublasHgemm | Yes | Yes | |
cublasSgemmEx | Yes | Yes | |
cublasGemmEx | Yes | Yes | |
cublasHgemmBatched | Yes | Yes | |
cublasSgemmBatched | Yes | Yes | |
cublasGemmBatchedEx | Yes | Yes | |
cublasGemmStridedBatchedEx | Yes | Yes | |
cublasSgemmStridedBatched | Yes | Yes | |
cublasDgemmBatched | Yes | Yes | |
cublasDgemmStridedBatched | Yes | Yes | |
cublasHgemmStridedBatched | Yes | Yes | |
cublasSgetrfBatched | Yes | Yes | |
cublasDgetrfBatched | Yes | Yes | |
cublasSgetrsBatched | Yes | Yes | |
cublasDgetrsBatched | Yes | Yes | |
cublasSger_v2 | Yes | Yes | |
cublasDger_v2 | Yes | Yes | |
cublasSsyr_v2 | Yes | Yes | |
cublasDsyr_v2 | Yes | Yes | |
cublasSspr_v2 | Yes | Yes | |
cublasDspr_v2 | Yes | Yes | |
cublasSsyr2_v2 | Yes | Yes | |
cublasDsyr2_v2 | Yes | Yes | |
cublasSspr2_v2 | Yes | Yes | |
cublasDspr2_v2 | Yes | Yes | |
cublasStrsm_v2 | Yes | Yes | |
cublasDtrsm_v2 | Yes | Yes | |
cublasStrsmBatched | Yes | Yes | |
cublasDtrsmBatched | Yes | Yes | |
cublasSgetriBatched | Yes | Yes | |
cublasDgetriBatched | Yes | Yes | |
cublasSgeqrfBatched | Yes | Yes | |
cublasDgeqrfBatched | Yes | Yes | |
cublasSgelsBatched | Yes | Yes | |
cublasDgelsBatched | Yes | Yes | |
cublasGetVersion_v2 | Yes | No | Get version |
cublasGetCudartVersion | Yes | No | |
cublasGetAtomicsMode | Yes | No | Set/Get Atomics parameters |
cublasSetAtomicsMode | Yes | No | |
cublasGetSmCountTarget | Yes | No | Set/Get SmCount parameters |
cublasSetSmCountTarget | Yes | No | |
cublasGetStatusName | Yes | No | Get status string |
cublasLoggerConfigure | Yes | No | Configure callback function |
cublasSetLoggerCallback | Yes | No | Set/Get callback function |
cublasGetLoggerCallback | Yes | No | |
cublasSetVector | Yes | No | memcpy H2D/D2H |
cublasGetVector | Yes | No | |
cublasSetMatrix | Yes | No | |
cublasGetMatrix | Yes | No | |
cublasSetVectorAsync | Yes | No | |
cublasGetVectorAsync | Yes | No | |
cublasSetMatrixAsync | Yes | No | |
cublasGetMatrixAsync | Yes | No | |
cublasSgemvBatched | Yes | No | gemv variants: batched and StridedBatched |
cublasDgemvBatched | Yes | No | |
cublasCgemvBatched | Yes | No | |
cublasZgemvBatched | Yes | No | |
cublasHSHgemvBatched | Yes | No | |
cublasHSSgemvBatched | Yes | No | |
cublasTSTgemvBatched | Yes | No | |
cublasTSSgemvBatched | Yes | No | |
cublasSgemvStridedBatched | Yes | No | |
cublasDgemvStridedBatched | Yes | No | |
cublasCgemvStridedBatched | Yes | No | |
cublasZgemvStridedBatched | Yes | No | |
cublasHSHgemvStridedBatched | Yes | No | |
cublasHSSgemvStridedBatched | Yes | No | |
cublasTSTgemvStridedBatched | Yes | No | |
cublasTSSgemvStridedBatched | Yes | No | |
cublasScnrm2_v2 | Yes | No | Level 1 complex types |
cublasDznrm2_v2 | Yes | No | |
cublasDotcEx | Yes | No | |
cublasCdotu_v2 | Yes | No | |
cublasCdotc_v2 | Yes | No | |
cublasZdotu_v2 | Yes | No | |
cublasZdotc_v2 | Yes | No | |
cublasCscal_v2 | Yes | No | |
cublasCsscal_v2 | Yes | No | |
cublasZscal_v2 | Yes | No | |
cublasZdscal_v2 | Yes | No | |
cublasCaxpy_v2 | Yes | No | |
cublasZaxpy_v2 | Yes | No | |
cublasCcopy_v2 | Yes | No | |
cublasZcopy_v2 | Yes | No | |
cublasCswap_v2 | Yes | No | |
cublasZswap_v2 | Yes | No | |
cublasIcamax_v2 | Yes | No | |
cublasIzamax_v2 | Yes | No | |
cublasIcamin_v2 | Yes | No | |
cublasIzamin_v2 | Yes | No | |
cublasScasum_v2 | Yes | No | |
cublasDzasum_v2 | Yes | No | |
cublasCrot_v2 | Yes | No | |
cublasCsrot_v2 | Yes | No | |
cublasZrot_v2 | Yes | No | |
cublasZdrot_v2 | Yes | No | |
cublasCrotg_v2 | Yes | No | |
cublasZrotg_v2 | Yes | No | |
cublasCgemv_v2 | Yes | No | gemv complex types |
cublasZgemv_v2 | Yes | No | |
cublasCgemm_v2 | Yes | No | gemm complex types |
cublasCgemm3m | Yes | No | |
cublasCgemm3mEx | Yes | No | |
cublasZgemm_v2 | Yes | No | |
cublasZgemm3m | Yes | No | |
cublasCgemmEx | Yes | No | |
cublasCgemmBatched | Yes | No | Batched gemm complex types |
cublasCgemm3mBatched | Yes | No | |
cublasZgemmBatched | Yes | No | |
cublasCgemmStridedBatched | Yes | No | |
cublasCgemm3mStridedBatched | Yes | No | |
cublasZgemmStridedBatched | Yes | No | |
cublasCgetrfBatched | Yes | No | getrf complex types |
cublasZgetrfBatched | Yes | No | |
cublasCgetrsBatched | Yes | No | GETRI for Complex Types |
cublasZgetrsBatched | Yes | No | |
cublasSgbmv_v2 | Yes | No | gbmv (banded matrix-vector mul) |
cublasDgbmv_v2 | Yes | No | |
cublasCgbmv_v2 | Yes | No | |
cublasZgbmv_v2 | Yes | No | |
cublasStrmv_v2 | Yes | No | trmv (triangular matrix-vector mul) |
cublasDtrmv_v2 | Yes | No | |
cublasCtrmv_v2 | Yes | No | |
cublasZtrmv_v2 | Yes | No | |
cublasStbmv_v2 | Yes | No | tbmv (triangular banded matrix-vector mul) |
cublasDtbmv_v2 | Yes | No | |
cublasCtbmv_v2 | Yes | No | |
cublasZtbmv_v2 | Yes | No | |
cublasStpmv_v2 | Yes | No | TPMV (Triangular Banded Matrix-Vector Multiplication) |
cublasDtpmv_v2 | Yes | No | |
cublasCtpmv_v2 | Yes | No | |
cublasZtpmv_v2 | Yes | No | |
cublasStrsv_v2 | Yes | No | trsv (solves a triangular linear system with a single right-hand side) |
cublasDtrsv_v2 | Yes | No | |
cublasCtrsv_v2 | Yes | No | |
cublasZtrsv_v2 | Yes | No | |
cublasStpsv_v2 | Yes | No | tpsv (solves a packed triangular linear system with a single right-hand side) |
cublasDtpsv_v2 | Yes | No | |
cublasCtpsv_v2 | Yes | No | |
cublasZtpsv_v2 | Yes | No | |
cublasStbsv_v2 | Yes | No | tbsv (solves a triangular banded linear system with a single right-hand side) |
cublasDtbsv_v2 | Yes | No | |
cublasCtbsv_v2 | Yes | No | |
cublasZtbsv_v2 | Yes | No | |
cublasSsymv_v2 | Yes | No | symv (symmetric matrix-vector mul) |
cublasDsymv_v2 | Yes | No | |
cublasCsymv_v2 | Yes | No | |
cublasZsymv_v2 | Yes | No | |
cublasChemv_v2 | Yes | No | hemv (Hermitian matrix-vector mul) |
cublasZhemv_v2 | Yes | No | |
cublasSsbmv_v2 | Yes | No | sbmv (symmetric banded matrix-vector mul) |
cublasDsbmv_v2 | Yes | No | |
cublasChbmv_v2 | Yes | No | hbmv (Hermitian banded matrix-vector mul) |
cublasZhbmv_v2 | Yes | No | |
cublasSspmv_v2 | Yes | No | spmv (symmetric packed matrix-vector mul) |
cublasDspmv_v2 | Yes | No | |
cublasChpmv_v2 | Yes | No | hpmv (Hermitian packed matrix-vector mul) |
cublasZhpmv_v2 | Yes | No | |
cublasCgeru_v2 | Yes | No | ger (general rank-1 update) complex types |
cublasCgerc_v2 | Yes | No | |
cublasZgeru_v2 | Yes | No | |
cublasZgerc_v2 | Yes | No | |
cublasCsyr_v2 | Yes | No | syr (symmetric rank-1 update) complex types |
cublasZsyr_v2 | Yes | No | |
cublasCher_v2 | Yes | No | her (Hermitian rank-1 update) |
cublasZher_v2 | Yes | No | |
cublasChpr_v2 | Yes | No | hpr (packed Hermitian rank-1 update) |
cublasZhpr_v2 | Yes | No | |
cublasCsyr2_v2 | Yes | No | syr2 (symmetric rank-2 update) complex types |
cublasZsyr2_v2 | Yes | No | |
cublasCher2_v2 | Yes | No | her2 (Hermitian rank-2 update) |
cublasZher2_v2 | Yes | No | |
cublasChpr2_v2 | Yes | No | hpr2 (packed Hermitian rank-2 update) |
cublasZhpr2_v2 | Yes | No | |
cublasSsyrk_v2 | Yes | No | syrk (symmetric rank-k update) |
cublasDsyrk_v2 | Yes | No | |
cublasCsyrk_v2 | Yes | No | |
cublasZsyrk_v2 | Yes | No | |
cublasCsyrkEx | Yes | No | |
cublasCsyrk3mEx | Yes | No | |
cublasCherk_v2 | Yes | No | herk (Hermitian rank-k update) |
cublasZherk_v2 | Yes | No | |
cublasCherkEx | Yes | No | |
cublasCherk3mEx | Yes | No | |
cublasSsyr2k_v2 | Yes | No | syr2k (symmetric rank-2k update) |
cublasDsyr2k_v2 | Yes | No | |
cublasCsyr2k_v2 | Yes | No | |
cublasZsyr2k_v2 | Yes | No | |
cublasCher2k_v2 | Yes | No | Hermitian rank-2 update (her2k) |
cublasZher2k_v2 | Yes | No | |
cublasSsyrkx | Yes | No | syrkx (variation of symmetric rank-k update) |
cublasDsyrkx | Yes | No | |
cublasCsyrkx | Yes | No | |
cublasZsyrkx | Yes | No | |
cublasCherkx | Yes | No | herkx (variation of Hermitian rank-k update) |
cublasZherkx | Yes | No | |
cublasSsymm_v2 | Yes | No | symm (symmetric matrix-matrix mul) |
cublasDsymm_v2 | Yes | No | |
cublasCsymm_v2 | Yes | No | |
cublasZsymm_v2 | Yes | No | |
cublasChemm_v2 | Yes | No | hemm (Hermitian matrix-matrix mul) |
cublasZhemm_v2 | Yes | No | |
cublasCtrsm_v2 | Yes | No | trsm (solves a triangular linear system with multiple right-hand sides) complex types |
cublasZtrsm_v2 | Yes | No | |
cublasStrmm_v2 | Yes | No | trmm (triangular matrix-matrix mul) |
cublasDtrmm_v2 | Yes | No | |
cublasCtrmm_v2 | Yes | No | |
cublasZtrmm_v2 | Yes | No | |
cublasSgeam | Yes | No | geam (matrix-matrix addition) |
cublasDgeam | Yes | No | |
cublasCgeam | Yes | No | |
cublasZgeam | Yes | No | |
cublasCgetriBatched | Yes | No | getri complex types |
cublasZgetriBatched | Yes | No | |
cublasCtrsmBatched | Yes | No | trsmBatched complex types |
cublasZtrsmBatched | Yes | No | |
cublasSmatinvBatched | Yes | No | Inversion of batched matrices |
cublasDmatinvBatched | Yes | No | |
cublasCmatinvBatched | Yes | No | |
cublasZmatinvBatched | Yes | No | |
cublasCgeqrfBatched | Yes | No | geqrfBatched (QR factorization) complex types |
cublasZgeqrfBatched | Yes | No | |
cublasCgelsBatched | Yes | No | gelsBatched (least squares problem) complex types |
cublasZgelsBatched | Yes | No | |
cublasSdgmm | Yes | No | dgmm (diagonal matrix-matrix mul) |
cublasDdgmm | Yes | No | |
cublasCdgmm | Yes | No | |
cublasZdgmm | Yes | No | |
cublasStpttr | Yes | No | |
cublasDtpttr | Yes | No | tp2tr (triangular packed to triangular) / tr2tp (triangular to triangular packed) |
cublasCtpttr | Yes | No | |
cublasZtpttr | Yes | No | |
cublasStrttp | Yes | No | |
cublasDtrttp | Yes | No | |
cublasCtrttp | Yes | No | |
cublasZtrttp | Yes | No |
cublasLt
This table compares the support status of cublasLt APIs to cublasLt 11.9.2.
Most APIs used in common NN scenarios are supported and optimized.
All APIs can be supported by software and have no current PPU hardware limitations. Additional API support will be added in future software versions based on priority.
The current API support rate is 73.8% (31 out of 42).
API | cublasLt 11.9.2 | PPU 1.7 | Description |
cublasLtCreate | Yes | Yes | |
cublasLtDestroy | Yes | Yes | |
cublasLtMatmul | Yes | Yes | |
cublasLtMatrixTransform | Yes | Yes | |
cublasLtMatrixLayoutInit_internal | Yes | Yes | |
cublasLtMatrixLayoutCreate | Yes | Yes | |
cublasLtMatrixLayoutDestroy | Yes | Yes | |
cublasLtMatrixLayoutSetAttribute | Yes | Yes | |
cublasLtMatrixLayoutGetAttribute | Yes | Yes | |
cublasLtMatmulDescInit_internal | Yes | Yes | |
cublasLtMatmulDescCreate | Yes | Yes | |
cublasLtMatmulDescDestroy | Yes | Yes | |
cublasLtMatmulDescSetAttribute | Yes | Yes | |
cublasLtMatmulDescGetAttribute | Yes | Yes | |
cublasLtMatrixTransformDescInit_internal | Yes | Yes | |
cublasLtMatrixTransformDescCreate | Yes | Yes | |
cublasLtMatrixTransformDescDestroy | Yes | Yes | |
cublasLtMatrixTransformDescSetAttribute | Yes | Yes | |
cublasLtMatrixTransformDescGetAttribute | Yes | Yes | |
cublasLtMatmulPreferenceInit_internal | Yes | Yes | |
cublasLtMatmulPreferenceCreate | Yes | Yes | |
cublasLtMatmulPreferenceDestroy | Yes | Yes | |
cublasLtMatmulPreferenceSetAttribute | Yes | Yes | |
cublasLtMatmulPreferenceGetAttribute | Yes | Yes | |
cublasLtMatmulAlgoGetHeuristic | Yes | Yes | |
cublasLtMatmulAlgoGetIds | Yes | Yes | |
cublasLtMatmulAlgoInit | Yes | Yes | |
cublasLtMatmulAlgoCheck | Yes | Yes | |
cublasLtMatmulAlgoCapGetAttribute | Yes | Yes | |
cublasLtMatmulAlgoConfigSetAttribute | Yes | Yes | |
cublasLtMatmulAlgoConfigGetAttribute | Yes | Yes | |
cublasLtGetVersion | Yes | No | Get version information |
cublasLtGetCudartVersion | Yes | No | |
cublasLtGetProperty | Yes | No | |
cublasLtGetStatusName | Yes | No | Get status string |
cublasLtGetStatusString | Yes | No | |
cublasLtLoggerSetCallback | Yes | No | Logger control options |
cublasLtLoggerSetFile | Yes | No | |
cublasLtLoggerOpenFile | Yes | No | |
cublasLtLoggerSetLevel | Yes | No | |
cublasLtLoggerSetMask | Yes | No | |
cublasLtLoggerForceDisable | Yes | No |