A collection of examples demonstrating GPU-agnostic programming using CubeCL.
Make sure you have Rust installed, then run any example with:
cargo run --bin <example_name>For example:
cargo run --bin 00_double_numbers| Example | Description |
|---|---|
| 00_double_numbers | The simplest CubeCL kernel - doubles each array element |
| 01_scale_numbers | Passing scalar parameters to kernels with ScalarArg |
| 02_plane_sum | Plane-level exclusive prefix sum using plane_exclusive_sum |
| 03_plane_broadcast | Broadcasting values across threads with plane_broadcast |
| 04_block_sum | Block-level prefix sum using shared memory |
| 05_hierarchical_scan | Hierarchical prefix sum for arbitrarily large arrays |
- GPU-Agnostic Programming Using CubeCL - Blog post explaining these examples
- CubeCL Documentation
- CubeCL GitHub Repository