Open
Description
It's still very early days and I'm not sure if normal people can even try it out yet. But I find that approach interesting because if we can get it to work, from my understanding, it means we can share a large fraction of the work with LLVM's C/++/Fortran OpenMP 4 backends, and that gives us access to a much larger workforce than Rust-on-GPU has ever enjoyed so far. So I'm curious to see what it will lead us to.
As far as I know, the main way to track progress right now is to subscribe to this github issue.
cc @ZuseZ4 for corrections and additional details.
Activity
HadrienG2 commentedon Nov 27, 2024
PS: By the way, thanks a lot for writing that section! It may sound like it does not belong to rust-gpu's core area of expertise, but I've been looking for a while for a centralized landing pad to point people to the various projects for Rust GPU compute.
ZuseZ4 commentedon Nov 27, 2024
Hi and thanks for the ping.
Yes the idea of the
std::offload
module is to just reuse LLVM's GPU Infra. LLVM can these days run almost anything on the gpu, see for example https://www.phoronix.com/news/DOOM-ROCm-LLVM-PortSo we can run both std and no-std dependencies on the gpu. I also have a slightly different design which I presented at the llvm dev and the rust scientific computing conference. The benefit is that it handles noalias (e.g. rust slices) a bit better, I think that point got raised by Sarah (faer) in the last reddit.
I have added a flag to rustc so people can play around with llvm-offload if they build it from source. But we don't have any proper examples or docs yet since I decided to focus on finishing upstreaming of
std::autodiff
first, the last two PRs for that should hopefully land next weekschell commentedon Nov 27, 2024
This is great, thanks for pointing me towards this work, I'll be following along :)
LegNeato commentedon Nov 27, 2024
Is this the same as https://www.reddit.com/r/rust/comments/1esp2u8/compiler_based_autodiff_backpropagation_for/?
I'm happy to add any project there as long as the description is easy for newcomers to GPU programming to understand.
FWIW my hope is to convert the Rust GPU GitHub org / website to a central place for GPU adjacent things. I have suggested the rust-gpu project change its name to narrow scope so we can make "rust GPU" a bigger tent.