Skip to content

Latest commit

 

History

History
156 lines (82 loc) · 6.56 KB

README.md

File metadata and controls

156 lines (82 loc) · 6.56 KB

cuSPARSE Library - Generic APIs Examples

Description

This folder demonstrates cuSPARSE Generic APIs usage.

cuSPARSE Generic APIs Documentation

cuSPARSE Samples


Vector - Vector Operations

  • cusparseAxpby

    The sample demonstrates Sparse Vector - Dense Vector scaling and sum

  • cusparseGather

    The sample demonstrates Dense Vector to Sparse Vector element gathering

  • cusparseRot

    The sample demonstrates Sparse Vector - Dense Vector Givens rotation

  • cusparseScatter

    The sample demonstrates Sparse Vector to Dense Vector element scattering

  • cusparseSpVV

    The sample demonstrates Sparse Vector - Dense Vector dot product

Matrix - Vector Operations

  • cusparseSpMV CSR

    The sample demonstrates Sparse Matrix - Dense Vector multiplication, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpMV COO

    The sample demonstrates Sparse Matrix - Dense Vector multiplication, where the sparse matrix is represented in COO (Coordinate) storage format

  • cusparseSpSV CSR

    The sample demonstrates Sparse triangular solver with single right-hand side, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpSV COO

    The sample demonstrates Sparse triangular solver with single right-hand side, where the sparse matrix is represented in COO (Coordinate) storage format

Matrix - Matrix Operations

  • cusparseSpMM CSR

    The sample demonstrates Sparse Matrix - Dense Matrix multiplication = Dense Matrix, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpMM CSR - Batched

    The sample demonstrates Batched Sparse Matrix - Dense Matrix multiplication = Dense Matrix , where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpMMOp CSR

    The sample demonstrates Sparse Matrix - Dense Matrix multiplication = Dense Matrix with Custom Operators, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpMM COO

    The sample demonstrates Sparse Matrix - Dense Matrix multiplication = Dense Matrix, where the sparse matrix is represented in COO (Coordinate) storage format

  • cusparseSpMM COO - Batched

    The sample demonstrates Batched Sparse Matrix - Dense Matrix multiplication = Dense Matrix, where the sparse matrix is represented in COO (Coordinate) storage format

  • cusparseSpMM SDDMM

    The sample demonstrates Dense Matrix - Dense Matrix multiplication = Sparse Matrix, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpMM Blocked-ELL

    The sample demonstrates Sparse Matrix - Dense Matrix multiplication = Dense Matrix, where the sparse matrix is represented in Blocked-ELL storage format

  • cusparseSpMM SDDMM - Batched The sample demonstrates Batched Dense matrix - Dense matrix multiplication = Sparse matrix, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpGEMM

    The sample demonstrates Sparse Matrix - Sparse Matrix multiplication = Sparse Matrix, where all operands are sparse matrices represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpGEMM - Memory Optmization

    The sample demonstrates Sparse Matrix - Sparse Matrix multiplication = Sparse Matrix, where all operands are sparse matrices represented in CSR (Compressed Sparse Row) storage format and the memory usage is optimzed

  • cusparseSpGEMM_reuse

    The sample demonstrates Sparse Matrix - Sparse Matrix multiplication = Sparse Matrix, where all operands are sparse matrices represented in CSR (Compressed Sparse Row) storage format and the structure of the output matrix can be reused multiple times

  • cusparseSpSM CSR

    The sample demonstrates Sparse triangular solver with multiple right-hand sides, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseSpSM COO

    The sample demonstrates Sparse triangular solver with multiple right-hand sides, where the sparse matrix is represented in COO (Coordinate) storage format

Conversion

  • cusparseSparseToDense

    The sample demonstrates Sparse Matrix to Dense Matrix conversion, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseDenseToSparse

    The sample demonstrates Dense Matrix to Sparse Matrix conversion, where the sparse matrix is represented in CSR (Compressed Sparse Row) storage format

  • cusparseDenseToSparse (Blocked-ELL)

    The sample demonstrates Dense Matrix to Sparse Matrix conversion, where the sparse matrix is represented in Blocked-Ellpack storage format

Legacy APIs

Optimizations

  • CUDA Graph Capture

    The sample demonstrates how to optimize Sparse vector - Dense vector dot product (cusparseSpVV) by exploiting CUDA Graph Capture functionality

  • Hardware Memory Compression

    The sample demonstrates how to optimize Sparse vector - Dense vector scaling and sum (cusparseAxpby) by exploiting NVIDIA Ampere architecture Hardware Memory Compression

Sparse Iterative Methods

  • Preconditioned CG

    The sample describes how to use the cuSPARSE and cuBLAS libraries to implement the Incomplete-Cholesky preconditioned iterative Conjugate Gradient (CG)

  • Preconditioned BiCGStab

    The sample describes how to use the cuSPARSE and cuBLAS libraries to implement the Incomplete-LU preconditioned iterative Biconjugate Gradient Stabilized Method (BiCGStab)