Skip to content
This repository has been archived by the owner on Dec 30, 2019. It is now read-only.
/ coaster-blas Public archive

Coaster plugin for backend-agnostic BLAS operations

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

fff-rs/coaster-blas

Repository files navigation

THIS REPOSITORY GOT MERGED INTO JUICE
PLEASE CONTINUE HERE JUICE / COASTER-BLAS


coaster-BLAS • Join the chat at https://gitter.im/spearow/coaster-nn Build Status Crates.io License

coaster-BLAS provides full BLAS support for Coaster, so you can use Basic Linear Algebra Subprograms on servers, desktops or mobiles, GPUs, FPGAs or CPUS, without carrying about OpenCL or CUDA support on the machine.

coaster-BLAS was started as collenchyma-BLAS at Autumn for the Rust Machine Intelligence Framework Leaf.

For more information,

Getting Started

If you're using Cargo, just add coaster-BLAS to your Cargo.toml:

[dependencies]
coaster = "0.4"
coaster-blas = "0.2.0"

If you're using Cargo Edit, you can call:

$ cargo add coaster-blas

Provided Operations

This Plugins provides the following operations to the Coaster Backend. A - means not yet implemented. More information can be found in the Documentation.

Operation CUDA OpenCL Native
Full Level 1 cuBLAS - rblas
Level 2 - - -
Level 3
GEMM cuBLAS - rblas

Note that blas does not have all methods and thus fails to link, use CARGO_BLAS=openblas to compile for native

Contributing

Want to contribute? Awesome! We have instructions to help you get started contributing code or documentation. And high priority issues, that we could need your help with.

We have a mostly real-time collaboration culture and happens here on Github and on the Coaster Gitter Channel. You can also reach out to the Maintainers {@drahnr}.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as below, without any additional terms or conditions.

Changelog

You can find the release history in the root file CHANGELOG.md.

A changelog is a log or record of all the changes made to a project, such as a website or software project, usually including such records as bug fixes, new features, etc. - Wikipedia

We are using Clog, the Rust tool for auto-generating CHANGELOG files.

License

Licensed under either of

at your option.