~/talk

Guided Linking: Dynamic Linking without the Costs

Talkat OOPSLA 2020 · 2020-11-15..11-20· [compilers-and-language-design]
links:none on file
links:none on file
links:none on file
slides:none on file

Guided Linking merges a developer-chosen optimized set into a single merged library (LLVM-based, using LTO+PGO), then uses developer-supplied constraints like NoOverride, NoUse, NoPlugin, NoWeak to avoid runtime indirection and enable optimizations such as inlining. Implemented with a function deduplication pass, it speeds Python by 9.2% on average (best 32%, 4 of 61 regressions), reduces 11 Boost versions’ ELF size by 57% and Protobuf by 31%, and makes a closed-config Clang build 5% faster and 13% smaller.

AI-written summary · about

  1. 0:00Intro
  2. 0:11Motivating Example
  3. 2:13Problem #1
  4. 2:29Solution #1
  5. 3:28Problem #2
  6. 4:19Solution #2
  7. 5:26Optimized Set Possibilities
  8. 6:15Without Constraints
  9. 7:32Adding Constraints
  10. 8:37Specifying Constraints
  11. 10:27Python Example
  12. 11:27Size reductions
  13. 11:40Clang
  14. 12:59Future Work
  15. 13:52Conclusion
~/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.