Skip to main content

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=12 or 13). 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cudass-0.1.3.tar.gz (42.8 kB view details)

Uploaded Source

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

Hashes for cudass-0.1.3.tar.gz
Algorithm Hash digest
SHA256 452c1ae5d9e461d2ef458de821e3ad3f1131c63e776689d1041ed05ad91feda6
MD5 4ac74befc0a6be4141a7dc7512c2c5c0
BLAKE2b-256 9653dad805db62df07d077991b3cba0e146a8c2fa09b3f917b95f9509b530f7c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page