High-performance CUDA sparse linear solver
Project description
cudass
High-performance CUDA sparse linear solver supporting multiple matrix types, cuDSS, cuSOLVER Dense, and cuSolverSp backends.
Docs: https://moca-technion.github.io/cudass/
Requirements
- PyTorch >= 2.0 with CUDA (from pytorch.org).
- nvidia-cudss-cu12 or nvidia-cudss-cu13 (>=0.6), chosen from
torch.version.cuda(override:CUDASS_CUDA_MAJOR=12or13). Install or let the build install it. - NVIDIA GPU and a driver compatible with your PyTorch CUDA (12.x or 13.x).
Installation
From PyPI (recommended)
pip install cudass
Builds from the sdist at install time. Requires nvcc (CUDA toolkit) on your system; the build pulls in Cython and torch, and picks nvidia-cudss-cu12 or cu13 from your PyTorch’s CUDA.
From source
pip install torch Cython # nvidia-cudss-cu12 or cu13 is chosen from torch.version.cuda
# nvcc (CUDA toolkit): set CUDA_HOME or e.g. module load cuda/12.4 or cuda/13.0
pip install -e .
# Override: CUDASS_CUDA_MAJOR=13 pip install -e . for CUDA 13
Quick Start
from cudass import CUDASparseSolver, MatrixType
solver = CUDASparseSolver(matrix_type=MatrixType.SPD, use_cache=True)
solver.update_matrix((index, value, m, n))
x = solver.solve(b)
License
Apache 2.0. See LICENSE.
This project uses third-party packages (e.g. PyTorch, NVIDIA cuDSS, Cython) and optional libraries (e.g. nvmath). See NOTICE for attributions and a pointer to their licenses. Your use of those components is subject to their terms.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file cudass-0.1.3.tar.gz.
File metadata
- Download URL: cudass-0.1.3.tar.gz
- Upload date:
- Size: 42.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
452c1ae5d9e461d2ef458de821e3ad3f1131c63e776689d1041ed05ad91feda6
|
|
| MD5 |
4ac74befc0a6be4141a7dc7512c2c5c0
|
|
| BLAKE2b-256 |
9653dad805db62df07d077991b3cba0e146a8c2fa09b3f917b95f9509b530f7c
|