~/talk

Getting the Most out of the LLVM Auto Vectorizer for RISC-V Vectors (RVV)

Talkat RISC-V Summit 2022 · 2022-12-13..12-14· [compilers-and-language-design]
links:none on file
slides:none on file

LLVM 14 enables VLA autovectorization for RISC‑V but SiFive adds an internal RVVLA removes remainder loop implementation that computes VL each vector iteration, yielding mixed SPEC2006 results (noticeable wins overall, regressions in hmmer and libquantum) and code‑size shifts. LLVM’s type system cannot express fractional LMUL encoding problem, loop vectorizer heuristics and codegen need fixes, and SLP still forces power‑of‑two trees and straight‑line only. Practical advice: use LLVM vectorizer reports, avoid pragma vector_width for RVV, apply IVDEP or loop FP‑reassoc pragmas, or disable vectorization/SLP when needed.

AI-written summary · about

  1. 0:00Introduction to Vectorization
  2. 1:08Loop Vectorization History
  3. 4:47Technical Challenges
  4. 7:19User and Terminology Issues
  5. 9:48Best Practices and Pragmas
  6. 14:15SLP Vectorization Limitations
  7. 17:37Summary and Conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.