tracel-ai / cubecl

Multi-platform high-performance compute language extension for Rust.
https://burn.dev
Apache License 2.0
516 stars 21 forks source link

Package: Vision #20

Open louisfd opened 1 month ago

louisfd commented 1 month ago

Add algorithms useful for vision / signal processing:

TomWyllie commented 1 month ago

I'm not sure how similar your abstraction layer is to the intermediate representation from Burn, but there should still be the 1D + 2D FFT implementation I had written in WGSL which @louisfd you ported into the IR? That could be a good starting point for FFT :) apologies I've been super busy and not had time to finish that PR off - https://github.com/tracel-ai/burn/tree/feat/ops/fft

louisfd commented 1 month ago

Hi Tom! Glad to hear from you 😄 Normally it should be straightforward to map the IR algorithm to CubeCL, though I admit the bitwise operations in FFT will challenge the language a bit because we haven't had to do that kind of operation in the kernels we wrote until now. Anyway, it's great to have this basis and the tests that come with it!

If you want to continue your work you should do it here in CubeCL instead then we can export it to Burn 🤖