Breeze is a header-only tensor (toy) library built with C++20 and CUDA.
It provides a simple Tensor representation, smart RAII-based device memory management, common element-wise operations, and optimized matrix multiplication implementations. (for now)
The easiest way to build the project is using the Nix package manager, which guarantees consistent versions of the CUDA toolkit, compilers, and libraries.
Once inside the development shell, run the following commands to configure and compile the project targets:
cmake -B build -S .
cmake --build buildA basic matrix multiplication benchmark. More stuff to be added soon.
