~/talk

Faster, easier 2D vector rendering

Talkat RustWeek 2025 · 2025-05-13..05-17· [rust]
slides:none on file

New renderer introduces sparse strips: fixed-height strip geometry (4×4 tiles, likely moving to 8×8) that flattens curves to lines, tiles and sorts them, merges contiguous tiles, computes per-tile 4×4 alpha (≈90 lines of code) and packs strips into quads to drastically cut draw calls. Hybrid mode runs CPU scheduling + GPU pixel work, keeps GPU memory bounded with spatiotemporal allocation, supports WebGL (no compute shaders) and a CPU-only path that is 2–2.5× faster than Tiny Skia. SIMD and NEON FP16 (handwritten ASM today) accelerate CPU stages; Vello CPU 0.0.1 is released and Blitz demos run live.

AI-written summary · about

  1. 0:00Introduction
  2. 1:36Current state of Vell
  3. 3:03Sparse strips
  4. 10:22Cache
  5. 12:23Path caching
  6. 13:06Scaling
  7. 14:03Clip optimization
  8. 15:49Spatial temporal allocation
  9. 17:09Parallelization
  10. 18:48SIMD
  11. 20:40Community
  12. 24:12Vevel CPU
  13. 26:14Questions
  14. 27:55APIs
  15. 29:38GPU limitations
  16. 31:40Vel vs Piet
  17. 33:24Web GPU
  18. 34:23Text rendering
~/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.