dspk_ops/core/kernels/fill.rs
1//! Filling a buffer with one value on the device.
2
3use cubecl::prelude::*;
4use dspk_core::compute::element_position;
5
6use crate::core::DspFloat;
7
8/// `out[i] = value` for `i < len`. One unit per element.
9#[cube(launch)]
10pub fn fill_kernel<F: DspFloat>(out: &mut [F], value: F, len: u32) {
11 let i = element_position() as u32;
12 if i < len {
13 out[i as usize] = value;
14 }
15}