~/talk

On-Stack Replacement for Program Generators and Source-to-Source Compilers

Talkat GPCE 2021 · 2021-10-17..10-18· [compilers-and-language-design]
links:none on file
links:none on file
slides:none on file

Implements a source-level OSR pattern that swaps loop bodies at iteration boundaries so generated C can start with a fast-to-compile version and trampoline to a heavier-optimized one, implemented in LMS and evaluated in Flare on TPC‑H queries (Q6 example). Tiered setup TCC then GCC -O1 yields best end-to-end time vs single GCC flags; speculative low-level tests pick between vectorized vs non-vectorized loops with a practical cutoff ≈15 and observe up to 4× speedup for fully vectorizable cases; hashmap high‑speculation gives ~10% when correct and safely falls back.

AI-written summary · about

  1. 0:00Intro
  2. 0:18Motivation
  3. 1:10Compilation Time
  4. 1:39Case Analysis - TPC-H Q6 - SF 0.1
  5. 3:36Shape of generated code
  6. 4:00Targeting a language with OSR?
  7. 4:31Duplicate, Optimize, Trampoline
  8. 5:45Generic OSR transformation
  9. 7:58Example
  10. 9:24Tiered Execution All are the identity function
  11. 10:11Evaluation - Tiered Execution
  12. 11:52Evaluation - Low-level speculation
  13. 12:39Speculation High-Level Completely different pieces of code are generated, with different assumptions. 8.g. use a hashmap that is optimized for 2 key or less / wse a generic
  14. 12:57Evaluation - High-level speculation
  15. 13:37Summary • Reduced the overhead introduced by an extra
~/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.