Skip to main content

Crate baracuda_cusparse_sys

Crate baracuda_cusparse_sys 

Source
Expand description

Raw FFI + dynamic loader for NVIDIA cuSPARSE (generic API subset).

baracuda-cusparse wraps this with a safe, typed API. Use this crate directly only if you need a function that the safe layer hasn’t wrapped yet (in which case please file a bug).

Structs§

Cusparse
Loaded cuSPARSE shared library plus a per-symbol OnceLock of function pointers.
cusparseStatus_t
Status / error code returned by cuSPARSE FFI calls.

Enums§

cudaDataType
cudaDataType values used by cuSPARSE / cuSOLVER’s generic APIs. Only the subset we actually use at v0.1.
cusparseCsr2CscAlg_t
Algorithm selector for CSR-to-CSC conversion.
cusparseDiagType_t
Diagonal-unit selector for sparse triangular routines.
cusparseFillMode_t
Triangular fill mode for sparse triangular routines.
cusparseIndexBase_t
Zero- vs one-based indexing for sparse-matrix index arrays.
cusparseIndexType_t
Index-element dtype for sparse-matrix offsets and column indices.
cusparseOperation_t
Transpose selector for cuSPARSE routines (matches cuBLAS values).
cusparseOrder_t
Row-major vs column-major dense storage order.
cusparseSDDMMAlg_t
Algorithm selector for cusparseSDDMM.
cusparseSpGEMMAlg_t
Algorithm selector for cusparseSpGEMM.
cusparseSpMMAlg_t
Algorithm selector for cusparseSpMM.
cusparseSpMVAlg_t
Algorithm selector for cusparseSpMV.
cusparseSpMatAttribute_t
Attribute key for cusparseSpMatSetAttribute / *GetAttribute.
cusparseSpSMAlg_t
Algorithm selector for cusparseSpSM.
cusparseSpSVAlg_t
Algorithm selector for cusparseSpSV.

Functions§

cusparse
Lazy-load the cuSPARSE shared library and return its function-pointer table.

Type Aliases§

PFN_cusparseAxpby
cuSPARSE: scaled vector addition (alphax + betay → y). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCooSetPointers
cuSPARSE: replace the row/column/value pointers on a COO descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCreate
cuSPARSE: create a cuSPARSE handle. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCreateBsr
cuSPARSE: create a BSR sparse-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCreateCoo
cuSPARSE: create a COO sparse-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCreateCsc
cuSPARSE: create a CSC sparse-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCreateCsr
cuSPARSE: create a CSR sparse-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCreateDnMat
cuSPARSE: create a dense-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCreateDnVec
cuSPARSE: create a dense-vector descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCscSetPointers
cuSPARSE: replace the column/row/value pointers on a CSC descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCsr2cscEx2
cuSPARSE: convert a CSR matrix to CSC (extended API). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCsr2cscEx2_bufferSize
cuSPARSE: workspace-size query for cusparseCsr2cscEx2. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseCsrSetPointers
cuSPARSE: replace the row/column/value pointers on a CSR descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseDenseToSparse_analysis
cuSPARSE: analysis stage for dense-to-sparse conversion. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseDenseToSparse_bufferSize
cuSPARSE: workspace-size query for dense-to-sparse conversion. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseDenseToSparse_convert
cuSPARSE: execute stage for dense-to-sparse conversion. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseDestroy
cuSPARSE: destroy a cuSPARSE handle. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseDestroyDnMat
cuSPARSE: destroy a dense-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseDestroyDnVec
cuSPARSE: destroy a dense-vector descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseDestroySpMat
cuSPARSE: destroy a sparse-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseGather
cuSPARSE: gather dense entries into a sparse vector. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseGetVersion
cuSPARSE: return the cuSPARSE library version. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseRot
cuSPARSE: Givens-rotation on sparse and dense vector pair. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSDDMM
cuSPARSE: sampled dense-dense matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSDDMM_bufferSize
cuSPARSE: workspace-size query for sampled dense-dense matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSDDMM_preprocess
cuSPARSE: preprocess stage of sampled dense-dense matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseScatter
cuSPARSE: scatter sparse vector entries into a dense vector. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSetStream
cuSPARSE: bind a CUDA stream to a cuSPARSE handle. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpGEMM_compute
cuSPARSE: compute stage of sparse matrix × sparse matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpGEMM_copy
cuSPARSE: copy stage of sparse matrix × sparse matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpGEMM_createDescr
cuSPARSE: create an opaque descriptor for sparse matrix × sparse matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpGEMM_destroyDescr
cuSPARSE: destroy an opaque descriptor for sparse matrix × sparse matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpGEMM_workEstimation
cuSPARSE: work-estimation stage of sparse matrix × sparse matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpMM
cuSPARSE: sparse matrix × dense matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpMM_bufferSize
cuSPARSE: workspace-size query for sparse matrix × dense matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpMM_preprocess
cuSPARSE: preprocess stage of sparse matrix × dense matrix multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpMV
cuSPARSE: sparse matrix-vector multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpMV_bufferSize
cuSPARSE: workspace-size query for sparse matrix-vector multiplication. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpMatGetSize
cuSPARSE: query rows, cols, and nnz of a sparse-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpMatSetAttribute
cuSPARSE: set an attribute (fill mode, diag type) on a sparse-matrix descriptor. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSM_analysis
cuSPARSE: analysis stage of sparse triangular linear solve (multiple right-hand sides). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSM_bufferSize
cuSPARSE: workspace-size query for sparse triangular linear solve (multiple right-hand sides). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSM_createDescr
cuSPARSE: create an opaque descriptor for sparse triangular linear solve (multiple right-hand sides). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSM_destroyDescr
cuSPARSE: destroy an opaque descriptor for sparse triangular linear solve (multiple right-hand sides). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSM_solve
cuSPARSE: solve stage of sparse triangular linear solve (multiple right-hand sides). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSV_analysis
cuSPARSE: analysis stage of sparse triangular linear solve (single right-hand side). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSV_bufferSize
cuSPARSE: workspace-size query for sparse triangular linear solve (single right-hand side). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSV_createDescr
cuSPARSE: create an opaque descriptor for sparse triangular linear solve (single right-hand side). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSV_destroyDescr
cuSPARSE: destroy an opaque descriptor for sparse triangular linear solve (single right-hand side). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSpSV_solve
cuSPARSE: solve stage of sparse triangular linear solve (single right-hand side). See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSparseToDense
cuSPARSE: materialize a sparse matrix into a dense one. See https://docs.nvidia.com/cuda/cusparse/index.html.
PFN_cusparseSparseToDense_bufferSize
cuSPARSE: workspace-size query for sparse-to-dense conversion. See https://docs.nvidia.com/cuda/cusparse/index.html.
cusparseDnMatDescr_t
Opaque dense-matrix descriptor.
cusparseDnVecDescr_t
Opaque dense-vector descriptor.
cusparseHandle_t
Opaque cuSPARSE handle.
cusparseMatDescr_t
Opaque legacy-API matrix descriptor.
cusparseSpGEMMDescr_t
Opaque SpGEMM intermediate-state descriptor.
cusparseSpMatDescr_t
Opaque sparse-matrix descriptor (CSR / CSC / COO / BSR).
cusparseSpSMDescr_t
Opaque SpSM intermediate-state descriptor.
cusparseSpSVDescr_t
Opaque SpSV intermediate-state descriptor.