Skip to main content

Python bindings for SuiteSparseQR.

Project description

pyspqr: Simple Python Wrapper for SuiteSparseQR

import scipy as sp
from pyspqr import qr

A = sp.sparse.random(1000,1000, format='csc')

R, H, HPinv, HTau = qr(A)

The result objects are Scipy CSC sparse matrices or 1 dimensional Numpy arrays. The last three objects are the Householder reflection representing Q, plus a row permutation. In future versions we’ll wrap them in a scipy.sparse.LinearOperator

Installation

pip install pyspqr

We publish compiled wheels in PyPI for all the major platforms, including aarch64 Linux. See here for all platforms and architectures available.

We use ABI3 reduced Python3 API and the newer Numpy2 ABI, so the wheels run on any Python greater or equal than 3.6 and both on Numpy 1 and 2.

Wheels ship bundled with the latest version of SuiteSparse which we compile ourselves in CI/CD, for Linux and Mac. They are linked to openBLAS on Linux, Intel MKL on Windows, and Accelerate on Mac. OpenMP is enabled on Linux builds, Windows, and Mac aarch64 10.14 or greater. We also have another build for Mac aarch64 with more retro compatibility but without openMP.

All our packaging code is standard setuptools, with minimal tweaks (we use pkg-config), so you should be able to compile locally using our source distribution, if for example you want to link another BLAS implementation, or use SuiteSparse CUDA kernels. The pre-built wheels should be OK for most users.

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

pyspqr-0.0.2.tar.gz (23.2 kB view details)

Uploaded Source

Built Distributions

pyspqr-0.0.2-cp36-abi3-win_amd64.whl (26.6 MB view details)

Uploaded CPython 3.6+ Windows x86-64

pyspqr-0.0.2-cp36-abi3-musllinux_1_2_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.6+ musllinux: musl 1.2+ x86-64

pyspqr-0.0.2-cp36-abi3-manylinux_2_28_aarch64.whl (6.2 MB view details)

Uploaded CPython 3.6+ manylinux: glibc 2.28+ ARM64

pyspqr-0.0.2-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.5 MB view details)

Uploaded CPython 3.6+ manylinux: glibc 2.17+ x86-64

pyspqr-0.0.2-cp36-abi3-macosx_14_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.6+ macOS 14.0+ ARM64

pyspqr-0.0.2-cp36-abi3-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.6+ macOS 11.0+ ARM64

pyspqr-0.0.2-cp36-abi3-macosx_10_9_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.6+ macOS 10.9+ x86-64

File details

Details for the file pyspqr-0.0.2.tar.gz.

File metadata

  • Download URL: pyspqr-0.0.2.tar.gz
  • Upload date:
  • Size: 23.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for pyspqr-0.0.2.tar.gz
Algorithm Hash digest
SHA256 f7fa47283a886079960e1af908bef2a36076bdf9540a2fc15fd9f24b74be6346
MD5 b1ce52fc6804b40b664bd4c7160cbf6d
BLAKE2b-256 d6b611befbcfe50e39784c2404a34fe2cf1f545b44b2d0285e12ed2a7e93ce37

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspqr-0.0.2.tar.gz:

Publisher: cibuildwheel.yml on enzbus/pyspqr

Attestations:

File details

Details for the file pyspqr-0.0.2-cp36-abi3-win_amd64.whl.

File metadata

  • Download URL: pyspqr-0.0.2-cp36-abi3-win_amd64.whl
  • Upload date:
  • Size: 26.6 MB
  • Tags: CPython 3.6+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for pyspqr-0.0.2-cp36-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 76601a7164163f075adc59aae9fe59b0f460da27bd4132df46d4a62099391979
MD5 e91bb247646556cd08ee4ec00d9272c8
BLAKE2b-256 ae6918bcd692d645d28b1e8a08731f3eb6cc75197037fa1af8965e1b83308dc9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspqr-0.0.2-cp36-abi3-win_amd64.whl:

Publisher: cibuildwheel.yml on enzbus/pyspqr

Attestations:

File details

Details for the file pyspqr-0.0.2-cp36-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyspqr-0.0.2-cp36-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2b71fb31519fafbde0748a11bd7f45de06e267d4de5111e2b228dde9de9af096
MD5 78729b0811836d3abb39ea39a4801049
BLAKE2b-256 273a76a8b5661e78af2360dd9f2f29344b5198cdfbd2add5ebf11a98a4d78163

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspqr-0.0.2-cp36-abi3-musllinux_1_2_x86_64.whl:

Publisher: cibuildwheel.yml on enzbus/pyspqr

Attestations:

File details

Details for the file pyspqr-0.0.2-cp36-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyspqr-0.0.2-cp36-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5048c145a02f1708d45c200bc24305dd83dbf33adb4c8a9f65544b4dc5cfb974
MD5 124c92b4df0bd4719f10c44a9fa9f3f7
BLAKE2b-256 3272d0ed09ac4160f36b6edae4943e363b464ab2ddc1827191d242c94a5933bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspqr-0.0.2-cp36-abi3-manylinux_2_28_aarch64.whl:

Publisher: cibuildwheel.yml on enzbus/pyspqr

Attestations:

File details

Details for the file pyspqr-0.0.2-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyspqr-0.0.2-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e64ef73974a445a685a9cc3190fecf8e3645a0f8accb144fdb1d44cebcdaf9bf
MD5 16e716c081fc66dc74ae3e51389a9593
BLAKE2b-256 1eb2a7f7d8c990e0d2973d749356f0470b07c84d7eefde175ab5ac88e55ef40e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspqr-0.0.2-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: cibuildwheel.yml on enzbus/pyspqr

Attestations:

File details

Details for the file pyspqr-0.0.2-cp36-abi3-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pyspqr-0.0.2-cp36-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 3375a16f72f1f2020bfe9fa0867dd8bea5fd08ea752870cbe730ab997688a7ad
MD5 6f6ff695b467cafb544bebba6c8f5532
BLAKE2b-256 3ecbd54484a49b09963e1d1bde4649fe4387502b918c09e5b848b0ff0c0cadaf

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspqr-0.0.2-cp36-abi3-macosx_14_0_arm64.whl:

Publisher: cibuildwheel.yml on enzbus/pyspqr

Attestations:

File details

Details for the file pyspqr-0.0.2-cp36-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyspqr-0.0.2-cp36-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 67fa3452b48ae9a1d11197cbc4114ed5a24868bf22f1902c33cb6bc88042c909
MD5 9acf9067ad413defe23ff4684ca04b95
BLAKE2b-256 18b59ab87fabb74a83c79cbf228406c7d1a9a58256ed77e8a5a2dbaacbd52892

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspqr-0.0.2-cp36-abi3-macosx_11_0_arm64.whl:

Publisher: cibuildwheel.yml on enzbus/pyspqr

Attestations:

File details

Details for the file pyspqr-0.0.2-cp36-abi3-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyspqr-0.0.2-cp36-abi3-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 408b1fa5810aea87577c8b19cf443ac01690abb69cd34b3bb716e7a1ebfcc5f0
MD5 89be9e6e8f040571db23a066f16730ff
BLAKE2b-256 a802d9811ae77d6275fc02d421e8a713233a1392770b5c7f75f4e529a07426ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspqr-0.0.2-cp36-abi3-macosx_10_9_x86_64.whl:

Publisher: cibuildwheel.yml on enzbus/pyspqr

Attestations:

Supported by

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