A Plan for SIMD
a year ago
- #Rust
- #Performance
- #SIMD
- Raph Levien outlines a plan for SIMD in Rust, aiming to make SIMD programming ergonomic and safe.
- The plan builds on previous discussions and aims to support a wide range of CPUs with fine-grained levels, including SSE 4.2 and AVX-2.
- Key goals include lightweight dependency, fine-grained SIMD levels, and support for a full cartesian product of SIMD widths and types.
- The proposal suggests using code generation to reduce boilerplate and improve compile times, moving away from heavy macro use.
- Explicit vs. variable width SIMD programming is discussed, with a preference for explicit widths for Linebender projects.
- The plan includes support for WASM SIMD and considers future work on embedded SIMD extensions like RVV and SVE.
- Feedback is encouraged via Zulip threads and the fearless_simd repository, with ongoing development focused on Vello's CPU and hybrid renderers.