potpath / xtensor-blas

BLAS extension to xtensor

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

xtensor

Travis Appveyor Documentation Binder Join the Gitter Chat

Introduction

xtensor-blas is an extension to the xtensor library, offering bindings to BLAS and LAPACK libraries through cxxblas and cxxlapack from the FLENS project.

xtensor-blas currently provides non-broadcasting dot, norm (1- and 2-norm for vectors), inverse, solve, eig, cross, det, slogdet, matrix_rank, inv, cholesky, qr, svd in the xt::linalg namespace (check the corresponding xlinalg.hpp header for the function signatures). The functions, and signatures, are trying to be 1-to-1 equivalent to NumPy. Low-level functions to interface with BLAS or LAPACK with xtensor containers are also offered in the blas and lapack namespace.

xtensor and xtensor-blas require a modern C++ compiler supporting C++14. The following C++ compilers are supported:

  • On Windows platforms, Visual C++ 2015 Update 2, or more recent
  • On Unix platforms, gcc 4.9 or a recent version of Clang

Installation

xtensor-blas is a header-only library. We provide a package for the conda package manager.

conda install -c conda-forge xtensor-blas

which will also install the core xtensor package.

Or you can directly install it from the sources:

cmake -D CMAKE_INSTALL_PREFIX=your_install_prefix
make install

To build the tests or actually use xtensor-blas, you will need binaries for

  • openblas
  • lapack

which are also available on conda-forge.

Trying it online

To try out xtensor-blas interactively in your web browser, just click on the binder link:

Binder

Documentation

To get started with using xtensor-blas, check out the full documentation

http://xtensor-blas.readthedocs.io/

Dependency on xtensor

xtensor-blas depends on the xtensor package

xtensor-blas xtensor
master ^0.18.0
0.14.0 ^0.18.0
0.13.x ^0.17.0
0.12.x ^0.17.0
0.11.x ^0.16.0
0.10.x ^0.15.4
0.9.x ^0.15.4
0.8.x ^0.15.0
0.7.x ^0.14.0

Changelog

0.9.0: BREAKING CHANGE! svd signature changed to match NumPy.

License

We use a shared copyright model that enables all contributors to maintain the copyright on their contributions.

This software is licensed under the BSD-3-Clause license. See the LICENSE file for details.

About

BLAS extension to xtensor

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:C++ 86.1%Language:C 13.6%Language:CMake 0.2%Language:Perl 0.1%Language:Python 0.0%Language:Makefile 0.0%Language:Emacs Lisp 0.0%