pub struct ReflectionPad1dBackward<D: Num> {
pub name: &'static str,
pub id: String,
pub pad_left: i32,
pub pad_right: i32,
pub block_ol: i32,
pub kernel_source: String,
pub entry_point_source: String,
pub source: String,
/* private fields */
}Expand description
1-D reflection padding backward pass.
Each output gradient position maps back to one input position via the same
reflection rule. Multiple output positions may map to the same input
position (the boundary elements reflect), so atomic_add is used.
dx must be zero-initialised before launch.
Fields§
§name: &'static strThe kernel function’s name (e.g. "flash_attention2_forward").
id: StringUnique kernel identifier: fn_name + dtype(s) + const values joined by “__”.
pad_left: i32Compile-time kernel constant, from the annotated fn’s const generics.
pad_right: i32Compile-time kernel constant, from the annotated fn’s const generics.
block_ol: i32Compile-time kernel constant, from the annotated fn’s const generics.
kernel_source: StringThe original kernel function source.
entry_point_source: StringThe Rust source of the generated C-ABI entry-point wrapper function.
source: StringCombined source (kernel_source + "\n\n" + entry_point_source); used by the Kernel trait.
Implementations§
Trait Implementations§
Source§impl<D: Num> Kernel for ReflectionPad1dBackward<D>
impl<D: Num> Kernel for ReflectionPad1dBackward<D>
Source§type Args<'__a> = (*mut D, *mut D, i32, i32, i32, i32)
type Args<'__a> = (*mut D, *mut D, i32, i32, i32, i32)
Source§fn kernel_source(&self) -> &str
fn kernel_source(&self) -> &str
Source§fn entry_point_source(&self) -> &str
fn entry_point_source(&self) -> &str
Source§fn entry_point_name(&self) -> String
fn entry_point_name(&self) -> String
"{name}_entry_point".