# coaster-BLAS • [](https://gitter.im/spearow/juice?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [](https://ci.spearow.io/teams/spearow/pipelines/juice) [](https://crates.io/crates/coaster-nn) [](https://deps.rs/repo/github/spearow/coaster-blas) [](#license)
coaster-BLAS provides full BLAS support for [Coaster][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.
It powers [Juice][juice].
For more information,
* see coaster-BLAS's [Documentation](https://spearow.github.io/coaster-blas)
* visit [Coaster][coaster] for portable operations and other Plugins.
* or get in touch on [Gitter][chat]
[coaster]: https://github.com/spearow/coaster
[spearow]: https://spearow.io/project/juice
[juice]: https://github.com/spearow/juice
## Getting Started
If you're using Cargo, just add coaster-BLAS to your Cargo.toml:
```toml
[dependencies]
coaster = "0.2"
coaster-blas = "0.2"
```
If you're using [Cargo Edit][cargo-edit], you can call:
```sh
$ cargo add coaster-blas
```
[cargo-edit]: https://github.com/killercup/cargo-edit
## 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][docs-ops].
| Operation | CUDA | OpenCL | Native |
|--- |--- |--- |--- |
| **Full Level 1** | cuBLAS | - | rblas |
| Level 2 | - | - | - |
| Level 3 | | | |
| GEMM | cuBLAS | - | rblas |
[docs-ops]: https://spearow.github.io/coaster-blas/coaster_blas/plugin/trait.IBlas.html
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][contributing].
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 [Gitter Channel][chat].
You can also reach out to the Maintainers
{[@drahnr][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.
[contributing]: CONTRIBUTING.md
[chat]: https://gitter.im/spearow/juice
[drahnr]: https://github.com/drahnr
## Changelog
You can find the release history in the root file [CHANGELOG.md][changelog].
> 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][changelog-quote]
We are using [Clog][clog], the Rust tool for auto-generating CHANGELOG files.
[changelog]: CHANGELOG.md
[changelog-quote]: https://en.wikipedia.org/wiki/Changelog
[Clog]: https://github.com/clog-tool/clog-cli
## License
Licensed under either of
* Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
* MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
at your option.