CUBLAS API support status (v1.7)

Updated at:
Copy as MD

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:

    1. Number of data types: 131

    2. Special matrix types (such as symmetric, compressed, and triangular): 36

    3. Helper functions (such as set/get and memcpy): 18

    4. Batched gemv: 12

    5. 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