Skip to main content

Crate moe_gpu_dsp

Crate moe_gpu_dsp 

Source
Expand description

§moe-gpu-dsp

MoE-routed GPU signal processing framework for Rust.

Provides a zero-copy GPU pipeline for frequency-domain processing: upload signal once, run all processing on GPU, download result once.

Built on cudarc for CUDA bindings and cuFFT for batch FFT operations.

§Pipeline

Signal -> [GPU upload] -> Window -> Batch FFT R2C -> Magnitude
  -> Processing kernels (median filter, soft mask, custom)
  -> Batch FFT C2R -> Overlap-add -> [GPU download] -> Output

§Quick start

use moe_gpu_dsp::{GpuDsp, DspConfig};

let dsp = GpuDsp::new(DspConfig::default()).unwrap();
let (signal_dev, windowed, n_frames) = dsp.window_frames(&signal);
let complex = dsp.batch_fft_r2c(&windowed, n_frames);
// ... run processing kernels on GPU ...
let output = dsp.batch_ifft_c2r_ola(&mut masked, n_frames, signal.len());

Structs§

DspConfig
GpuDsp
Stub when CUDA feature is not enabled.