Rust-GPU / Rust-CUDA

Ecosystem of libraries and tools for writing and executing fast GPU code fully in Rust.
Apache License 2.0
3.05k stars 118 forks source link

Implement Dead Code Elimination (no more gigantic PTX files 🎉 ) #12

Closed RDambrosio016 closed 2 years ago

RDambrosio016 commented 2 years ago

This WIP PR implements proper dead code elimination by swapping out the lazy-loading approach for an approach of merging everything together, internalizing, then running global DCE. This removes any dead code not used by kernels as well as improves performance by making libnvvm do less useless work.

path_tracer's generated PTX is now about 3.7 kloc instead of ~20kloc.

Things left to do: