Skip to main content

Intel MKL wrapper for sparse matrix operations

Project description

sparse_dot_mkl

This is a wrapper for the sparse matrix multiplication in the intel MKL library. It is implemented entirely in native python using ctypes. The main advantage to MKL (which motivated this) is multithreaded sparse matrix multiplication. The scipy sparse implementation is single-threaded at the time of writing (2020-01-03).

The only function explicitly available is dot_product_mkl, which takes two CSR or CSC sparse matrices dot_product_mkl(A, B) and produces a CSR or CSC matrix that is A (dot) B.

This only does floating point data, and both matrices must be identical types. If cast=True non-float matrices will be converted to doubles, and a single-precision matrix will be promoted to doubles unless both matrices are single-precision. cast=True will change data in-place. This function may also reorder the underlying data structures without warning while creating MKL's internal matrix representation.

This package requires libmkl_rt.so. This is distributed with the full version of conda, and can be installed into Miniconda with conda install -c intel mkl. Alternatively, you may add need to add the path to MKL shared objects to LD_LIBRARY_PATH (e.g. export LD_LIBRARY_PATH=/opt/intel/mkl/lib/intel64:$LD_LIBRARY_PATH).

Project details


Release history Release notifications

This version

0.1

Download files

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

Files for sparse-dot-mkl, version 0.1
Filename, size File type Python version Upload date Hashes
Filename, size sparse_dot_mkl-0.1-py3-none-any.whl (7.8 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size sparse_dot_mkl-0.1.tar.gz (6.5 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page