~/talk

Software Multiplexing - Share Your Libraries and Statically Link Them Too

Talkat OOPSLA 2018 · 2018-11-07..11-09· [software-architecture]
links:none on file
slides:none on file

Software Multiplexing compiles programs and their shared libraries into a single static executable using bitcode and a multicall dispatch, implemented in the ALLVM tool allmux. It deduplicates library code and does IR-level static linking (Static Linking of Shared Libraries), so thousands of Linux packages build automatically, LLVM builds are 18.3% smaller and 30% faster, and multiplexing 74 packages yields a 39% geometric mean size reduction; combining many versions (e.g., 40 memcached) fits far more versions into one binary.

AI-written summary · about

  1. 0:00Start
  2. 1:57Big Picture
  3. 3:12Shared vs Static Libraries
  4. 4:56Sources of Code Duplication
  5. 5:57Example: Code Deduplication with Allmux
  6. 7:02Performance Impact of Allmux
  7. 8:05Memory Usage with Shared Libraries
  8. 11:05allexe: Self-contained IR for Pgms
  9. 12:29Automatic Multicall
  10. 13:29LEMP Stack for Web Servers
  11. 16:20ALL 40 versions of memcached (Really!)
  12. 17:15Library Deduplication is important
  13. 17:52Limitations
  14. 19:02Summary: Software Multiplexing
~/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.