mamba-webgpu / shaders /silu.wgsl
LJTSG's picture
Upload shaders/silu.wgsl with huggingface_hub
8b153d4 verified
raw
history blame contribute delete
474 Bytes
// silu.wgsl — element-wise SiLU/Swish activation, in-place.
// silu(x) = x * sigmoid(x) = x / (1 + exp(-x))
struct Params { n: u32, }
@group(0) @binding(0) var<storage, read_write> data: array<f32>;
@group(1) @binding(0) var<uniform> params: Params;
@compute @workgroup_size(64)
fn main(@builtin(global_invocation_id) gid: vec3<u32>) {
let i = gid.x;
if (i >= params.n) { return; }
let x = data[i];
let s = 1.0 / (1.0 + exp(-x));
data[i] = x * s;
}