docs.rs failed to build cumath-0.2.6
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
cumath
Cumath is a safe cuda wrapper for Rust : The goal is to make the highest zero-cost abstraction for cuda computations with vectors and matrices. Real zero cost abstraction can be achieved when template specialization will be implemented in Rust.
Install nvcc before : https://developer.nvidia.com/cuda-toolkit
/!\ This library is still under developement!
/!\ The detection of cuda compatible c compiler is very basic and only works for linux, if it doesn't work for you, you can try to comment this line in build.rs : "std::env::set_var("CXX", get_ccbin().unwrap());"
Implemented :
- GPU memory management
- Vector
- Matrix
- CuBLAS
- CuRAND
- Cuda streams
- Data type genericity
To be implemented :
- User-definable Cuda kernels
- More built-in functions
- Improve automatic cuda-compatible c compiler detection
Won't be implemented
- Backend choice with CPU (This would rather be a higher level library)
Getting started
Add Cumath to your Cargo.toml:
[dependencies]
cumath = "0.2.2"
Then in your main.rs :
extern crate cumath;
Examples
Simple vector addition
extern crate cumath;
use *;
Matrix multiplication using CuBLAS
extern crate cumath;
use *;
For more info, run 'cargo doc --open'