Skip to main content
`Ctrl`+`K`

# /build/hipsparselt-2uLnx3/hipsparselt-7.2.4+ds/library/include/hipsparselt.h File Reference

hipSPARSELt: /build/hipsparselt-2uLnx3/hipsparselt-7.2.4+ds/library/include/hipsparselt.h File Reference
Data Structures | Macros | Enumerations | Functions
hipsparselt.h File Reference

hipsparselt.h provides Sparse Linear Algebra Subprograms of Prune, Compressed and Matrix Multiplication, using HIP optimized for AMD GPU hardware. More...

`#include <hipsparse/hipsparse.h>`
`#include <hipsparselt/hipsparselt-export.h>`
`#include <hipsparselt/hipsparselt-version.h>`
`#include <hip/hip_complex.h>`
`#include <hip/hip_runtime_api.h>`
`#include <hip/hip_bfloat16.h>`
`#include <hip/hip_fp16.h>`
`#include <hip/hip_fp8.h>`
`#include <hip/library_types.h>`
Include dependency graph for hipsparselt.h:

Go to the source code of this file.

## Data Structures

struct | hipsparseLtHandle_t
| Handle to the hipSPARSELt library context queue. More...
struct | hipsparseLtMatDescriptor_t
| Descriptor of the matrix. More...
struct | hipsparseLtMatmulDescriptor_t
| Descriptor of the matrix multiplication operation. More...
struct | hipsparseLtMatmulAlgSelection_t
| Descriptor of the matrix multiplication algorithm. More...
struct | hipsparseLtMatmulPlan_t
| Descriptor of the matrix multiplication execution plan. More...

## Macros

#define | _HIPSPARSELT_H_

## Enumerations

enum | hipsparseLtSparsity_t { HIPSPARSELT_SPARSITY_50_PERCENT }
| Specify the sparsity of the structured matrix. More...
enum | hipsparseLtMatDescAttribute_t { HIPSPARSELT_MAT_NUM_BATCHES , HIPSPARSELT_MAT_BATCH_STRIDE }
| Specify the additional attributes of a matrix descriptor. More...
enum | hipsparseLtComputetype_t { HIPSPARSELT_COMPUTE_16F = 0 , HIPSPARSELT_COMPUTE_32I , HIPSPARSELT_COMPUTE_32F , HIPSPARSELT_COMPUTE_TF32 , HIPSPARSELT_COMPUTE_TF32_FAST }
| Specify the compute precision modes of the matrix. More...

enum

hipsparseLtMatmulDescAttribute_t {
HIPSPARSELT_MATMUL_ACTIVATION_RELU = 0 ,
HIPSPARSELT_MATMUL_ACTIVATION_RELU_UPPERBOUND = 1 ,
HIPSPARSELT_MATMUL_ACTIVATION_RELU_THRESHOLD = 2 ,
HIPSPARSELT_MATMUL_ACTIVATION_GELU = 3 ,
HIPSPARSELT_MATMUL_ACTIVATION_GELU_SCALING = 4 ,
HIPSPARSELT_MATMUL_ALPHA_VECTOR_SCALING = 5 ,
HIPSPARSELT_MATMUL_BETA_VECTOR_SCALING = 6 ,
HIPSPARSELT_MATMUL_BIAS_STRIDE = 7 ,
HIPSPARSELT_MATMUL_BIAS_POINTER = 8 ,
HIPSPARSELT_MATMUL_ACTIVATION_ABS = 9 ,
HIPSPARSELT_MATMUL_ACTIVATION_LEAKYRELU = 10 ,
HIPSPARSELT_MATMUL_ACTIVATION_LEAKYRELU_ALPHA = 11 ,
HIPSPARSELT_MATMUL_ACTIVATION_SIGMOID = 12 ,
HIPSPARSELT_MATMUL_ACTIVATION_TANH = 13 ,
HIPSPARSELT_MATMUL_ACTIVATION_TANH_ALPHA = 14 ,
HIPSPARSELT_MATMUL_ACTIVATION_TANH_BETA = 15 ,
HIPSPARSELT_MATMUL_BIAS_TYPE = 16 ,
HIPSPARSELT_MATMUL_SPARSE_MAT_POINTER = 17
}

| Specify the additional attributes of a matrix multiplication descriptor. More...
enum | hipsparseLtMatmulAlg_t { HIPSPARSELT_MATMUL_ALG_DEFAULT }
| Specify the algorithm for matrix-matrix multiplication. More...
enum | hipsparseLtMatmulAlgAttribute_t { HIPSPARSELT_MATMUL_ALG_CONFIG_ID = 0 , HIPSPARSELT_MATMUL_ALG_CONFIG_MAX_ID = 1 , HIPSPARSELT_MATMUL_SEARCH_ITERATIONS = 2 , HIPSPARSELT_MATMUL_SPLIT_K = 3 , HIPSPARSELT_MATMUL_SPLIT_K_MODE = 4 , HIPSPARSELT_MATMUL_SPLIT_K_BUFFERS = 5 }
| Specify the matrix multiplication algorithm attributes. More...
enum | hipsparseLtPruneAlg_t { HIPSPARSELT_PRUNE_SPMMA_TILE = 0 , HIPSPARSELT_PRUNE_SPMMA_STRIP = 1 }
| Specify the pruning algorithm to apply to the structured matrix before the compression. More...
enum | hipsparseLtSplitKMode_t { HIPSPARSELT_SPLIT_K_MODE_ONE_KERNEL = 0 , HIPSPARSELT_SPLIT_K_MODE_TWO_KERNELS = 1 }
| Specify the split k mode value. More...

## Functions

void | hipsparseLtInitialize ()
| Initialize hipSPARSELt for the current HIP device.
hipsparseStatus_t | hipsparseLtGetVersion (const hipsparseLtHandle_t *handle, int *version)
| Retrive the version number of the hipSPARSELt library.
hipsparseStatus_t | hipsparseLtGetProperty (hipLibraryPropertyType propertyType, int *value)
| Retrive the value of the requested property.
hipsparseStatus_t | hipsparseLtGetGitRevision (hipsparseLtHandle_t handle, char *rev)
hipsparseStatus_t | hipsparseLtGetArchName (char **archName)
hipsparseStatus_t | hipsparseLtInit (hipsparseLtHandle_t *handle)
| Create a hipsparselt handle.
hipsparseStatus_t | hipsparseLtDestroy (const hipsparseLtHandle_t *handle)
| Destroy a hipsparselt handle.
hipsparseStatus_t | hipsparseLtDenseDescriptorInit (const hipsparseLtHandle_t *handle, hipsparseLtMatDescriptor_t *matDescr, int64_t rows, int64_t cols, int64_t ld, uint32_t alignment, hipDataType valueType, hipsparseOrder_t order)
| Create a descriptor for dense matrix.
hipsparseStatus_t | hipsparseLtStructuredDescriptorInit (const hipsparseLtHandle_t *handle, hipsparseLtMatDescriptor_t *matDescr, int64_t rows, int64_t cols, int64_t ld, uint32_t alignment, hipDataType valueType, hipsparseOrder_t order, hipsparseLtSparsity_t sparsity)
| Create a descriptor for structured matrix.
hipsparseStatus_t | hipsparseLtMatDescriptorDestroy (const hipsparseLtMatDescriptor_t *matDescr)
| Destroy a matrix descriptor.
hipsparseStatus_t | hipsparseLtMatDescSetAttribute (const hipsparseLtHandle_t *handle, hipsparseLtMatDescriptor_t *matDescr, hipsparseLtMatDescAttribute_t matAttribute, const void *data, size_t dataSize)
| Specify the matrix attribute of a matrix descriptor.
hipsparseStatus_t | hipsparseLtMatDescGetAttribute (const hipsparseLtHandle_t *handle, const hipsparseLtMatDescriptor_t *matDescr, hipsparseLtMatDescAttribute_t matAttribute, void *data, size_t dataSize)
| Get the matrix type of a matrix descriptor.
hipsparseStatus_t | hipsparseLtMatmulDescriptorInit (const hipsparseLtHandle_t *handle, hipsparseLtMatmulDescriptor_t *matmulDescr, hipsparseOperation_t opA, hipsparseOperation_t opB, const hipsparseLtMatDescriptor_t *matA, const hipsparseLtMatDescriptor_t *matB, const hipsparseLtMatDescriptor_t *matC, const hipsparseLtMatDescriptor_t *matD, hipsparseLtComputetype_t computeType)
| Initializes the matrix multiplication descriptor.
hipsparseStatus_t | hipsparseLtMatmulDescSetAttribute (const hipsparseLtHandle_t *handle, hipsparseLtMatmulDescriptor_t *matmulDescr, hipsparseLtMatmulDescAttribute_t matmulAttribute, const void *data, size_t dataSize)
| Specify the matrix attribute of a matrix descriptor.
hipsparseStatus_t | hipsparseLtMatmulDescGetAttribute (const hipsparseLtHandle_t *handle, const hipsparseLtMatmulDescriptor_t *matmulDescr, hipsparseLtMatmulDescAttribute_t matmulAttribute, void *data, size_t dataSize)
| Get the matrix type of a matrix descriptor.
hipsparseStatus_t | hipsparseLtMatmulAlgSelectionInit (const hipsparseLtHandle_t *handle, hipsparseLtMatmulAlgSelection_t *algSelection, const hipsparseLtMatmulDescriptor_t *matmulDescr, hipsparseLtMatmulAlg_t alg)
| Initializes the algorithm selection descriptor.
hipsparseStatus_t | hipsparseLtMatmulAlgSetAttribute (const hipsparseLtHandle_t *handle, hipsparseLtMatmulAlgSelection_t *algSelection, hipsparseLtMatmulAlgAttribute_t attribute, const void *data, size_t dataSize)
| Specify the algorithm attribute of a algorithm selection descriptor.
hipsparseStatus_t | hipsparseLtMatmulAlgGetAttribute (const hipsparseLtHandle_t *handle, const hipsparseLtMatmulAlgSelection_t *algSelection, hipsparseLtMatmulAlgAttribute_t attribute, void *data, size_t dataSize)
| Get the specific algorithm attribute from algorithm selection descriptor.
hipsparseStatus_t | hipsparseLtMatmulGetWorkspace (const hipsparseLtHandle_t *handle, const hipsparseLtMatmulPlan_t *plan, size_t *workspaceSize)
| Determines the required workspace size.
hipsparseStatus_t | hipsparseLtMatmulPlanInit (const hipsparseLtHandle_t *handle, hipsparseLtMatmulPlan_t *plan, const hipsparseLtMatmulDescriptor_t *matmulDescr, const hipsparseLtMatmulAlgSelection_t *algSelection)
| Initializes the matrix multiplication plan descriptor.
hipsparseStatus_t | hipsparseLtMatmulPlanDestroy (const hipsparseLtMatmulPlan_t *plan)
| Destroy a matrix multiplication plan descriptor.
hipsparseStatus_t | hipsparseLtMatmul (const hipsparseLtHandle_t *handle, const hipsparseLtMatmulPlan_t *plan, const void *alpha, const void *d_A, const void *d_B, const void *beta, const void *d_C, void *d_D, void *workspace, hipStream_t *streams, int32_t numStreams)
| Sparse matrix dense matrix multiplication.
hipsparseStatus_t | hipsparseLtMatmulSearch (const hipsparseLtHandle_t *handle, hipsparseLtMatmulPlan_t *plan, const void *alpha, const void *d_A, const void *d_B, const void *beta, const void *d_C, void *d_D, void *workspace, hipStream_t *streams, int32_t numStreams)
| Sparse matrix dense matrix multiplication.
hipsparseStatus_t | hipsparseLtSpMMAPrune (const hipsparseLtHandle_t *handle, const hipsparseLtMatmulDescriptor_t *matmulDescr, const void *d_in, void *d_out, hipsparseLtPruneAlg_t pruneAlg, hipStream_t stream)
| Purnes a dense matrix.
hipsparseStatus_t | hipsparseLtSpMMAPruneCheck (const hipsparseLtHandle_t *handle, const hipsparseLtMatmulDescriptor_t *matmulDescr, const void *d_in, int *d_valid, hipStream_t stream)
| checks the correctness of the pruning structure for a given matrix.
hipsparseStatus_t | hipsparseLtSpMMAPrune2 (const hipsparseLtHandle_t *handle, const hipsparseLtMatDescriptor_t *sparseMatDescr, int isSparseA, hipsparseOperation_t op, const void *d_in, void *d_out, hipsparseLtPruneAlg_t pruneAlg, hipStream_t stream)
| Purnes a dense matrix.
hipsparseStatus_t | hipsparseLtSpMMAPruneCheck2 (const hipsparseLtHandle_t *handle, const hipsparseLtMatDescriptor_t *sparseMatDescr, int isSparseA, hipsparseOperation_t op, const void *d_in, int *d_valid, hipStream_t stream)
| checks the correctness of the pruning structure for a given matrix.
hipsparseStatus_t | hipsparseLtSpMMACompressedSize (const hipsparseLtHandle_t *handle, const hipsparseLtMatmulPlan_t *plan, size_t *compressedSize, size_t *compressBufferSize)
| provide the size of the compressed matrix.
hipsparseStatus_t | hipsparseLtSpMMACompress (const hipsparseLtHandle_t *handle, const hipsparseLtMatmulPlan_t *plan, const void *d_dense, void *d_compressed, void *d_compressBuffer, hipStream_t stream)
| compresses a dense matrix to structured matrix.
hipsparseStatus_t | hipsparseLtSpMMACompressedSize2 (const hipsparseLtHandle_t *handle, const hipsparseLtMatDescriptor_t *sparseMatDescr, size_t *compressedSize, size_t *compressBufferSize)
| provide the size of the compressed matrix.
hipsparseStatus_t | hipsparseLtSpMMACompress2 (const hipsparseLtHandle_t *handle, const hipsparseLtMatDescriptor_t *sparseMatDescr, int isSparseA, hipsparseOperation_t op, const void *d_dense, void *d_compressed, void *d_compressBuffer, hipStream_t stream)
| compresses a dense matrix to structured matrix.

## Detailed Description

hipsparselt.h provides Sparse Linear Algebra Subprograms of Prune, Compressed and Matrix Multiplication, using HIP optimized for AMD GPU hardware.

## Macro Definition Documentation

## ◆ _HIPSPARSELT_H_

#define _HIPSPARSELT_H_

## Function Documentation

## ◆ hipsparseLtGetArchName()

hipsparseStatus_t hipsparseLtGetArchName | ( | char ** | archName | ) |

## ◆ hipsparseLtGetGitRevision()

hipsparseStatus_t hipsparseLtGetGitRevision | ( | hipsparseLtHandle_t | handle,
|  | char * | rev )