cuSPARSELt Data Types¶
Opaque Data Structures¶
cusparseLtHandle_t
¶
ThecusparseLtHandle_t
structure holds the cuSPARSELt library context (device properties, system information, etc.).The handle must be initialized and destroyed with cusparseLtInit() and cusparseLtDestroy() functions respectively.
cusparseLtMatDescriptor_t
¶
ThecusparseLtMatDescriptor_t
structure captures the shape and characteristics of a matrix.It is initialized by cusparseLtDenseDescriptorInit() or cusparseLtStructuredDescriptorInit() functions.
cusparseLtMatmulDescriptor_t
¶
ThecusparseLtMatmulDescriptor_t
structure holds the description of the matrix multiplication operation.It is initialized by cusparseLtMatmulDescriptorInit() function.
cusparseLtMatmulAlgSelection_t
¶
ThecusparseLtMatmulAlgSelection_t
structure holds the description of the matrix multiplication algorithm.It is initialized by cusparseLtMatmulAlgSelectionInit() function.
cusparseLtMatmulPlan_t
¶
ThecusparseLtMatmulPlan_t
structure holds the matrix multiplication execution plan, namely all the information necessary to execute thecusparseLtMatmul()
operation.It is initialized and destroyed by cusparseLtMatmulPlanInit() and cusparseLtMatmulPlanDestroy() functions respectively.
Enumerators¶
cusparseLtSparsity_t
¶
ThecusparseLtSparsity_t
enumerator specifies the sparsity ratio of the structured matrix as
Value |
Description |
---|---|
|
50% Sparsity Ratio (2:4 Sparse MMA) |
The sparsity property is used in the cusparseLtStructuredDescriptorInit() function.
cusparseComputeType
¶
ThecusparseComputeType
enumerator specifies the compute precision modes of the matrix
Value |
Description |
---|---|
|
- Default mode for 16-bit floating-point precision - All compute and intermediate storage precisions with at least 16-bit precision - Tensor Cores will be used whenever possible |
|
- Default mode for 32-bit integer precision - All compute and intermediate storage precisions with at least 32-bit integer precision - Tensor Cores will be used whenever possible |
The compute precision is used in the cusparseLtMatmulDescriptorInit() function.
cusparseLtMatmulAlg_t
¶
ThecusparseLtMatmulAlg_t
enumerator specifies the algorithm for matrix-matrix multiplication
Value |
Description |
---|---|
|
Default algorithm |
The algorithm enumerator is used in the cusparseLtMatmulAlgSelectionInit() function.
cusparseLtMatmulAlgAttribute_t
¶
ThecusparseLtMatmulAlgAttribute_t
enumerator specifies the matrix multiplication algorithm attributes
Value |
Description |
---|---|
|
Algorithm ID (set and query) |
|
Algorithm ID limit (query only) |
|
Number of iterations (kernel launches per algorithm) for cusparseLtMatmulSearch(), default=10 |
The algorithm attribute enumerator is used in the cusparseLtMatmulAlgGetAttribute() and cusparseLtMatmulAlgSetAttribute() functions.
cusparseLtPruneAlg_t
¶
ThecusparseLtPruneAlg_t
enumerator specifies the pruning algorithm to apply to the structured matrix before the compression
Value |
Description |
---|---|
|
Zero-out eight values in a 4x4 tile to maximize the L1-norm of the resulting tile, under the constraint of selecting exactly two elements for each row and column |
|
Zero-out two values in a 1x4 strip to maximize the L1-norm of the resulting strip. The strip direction is chosen according to the operation |
The pruning algorithm is used in the cusparseLtSpMMAPrune() function.