~/talk

Programming language memory models: Problems, solutions, and directions

Talkat Hydra 2020 · 2020-07-06..07-09· [compilers-and-language-design, concurrency]
links:none on file
slides:none on file

Shows why sequential consistency fails for real hardware with the Dekker's lock example (both critical sections observed on x86 unless fences are inserted) and why C11 permits out-of-thin-air values. Compares models (SC, C11/Java, RC11, Promising 1.0/2.0, Weakestmo) by three concrete metrics: which compiler reorderings must be banned, which fences compilers/VMs insert for ARM/x86, and measured cost (LLVM disablement → ~34% slowdown, patched → ~5.5%; volatile-everywhere JVM → x86 ~28–79% avg, ARM up to 557%). Recommends tradeoffs: RC11-like fixes give near-zero cost on x86 but need extra fences on ARM; Promising-style semantics avoid thin-air with different complexity.

AI-written summary · about

  1. 0:00Start
  2. 0:27Research Interests
  3. 1:11Memory Models
  4. 7:22Weak Behaviors
  5. 10:16Programming Language Memory Models Requirements
  6. 10:32Soundness of Compile Optimizations
  7. 11:47Criteria Is Efficient Compilation to Hardware
  8. 15:07Well-Known Memory Models
  9. 15:23Sequential Consistency
  10. 18:13Java Memory Models
  11. 20:01Efficient Efficiency of Compilation to Hardware
  12. 20:21Exploding Java Memory Model Drf Guarantee
  13. 24:38Memory Models in Terms of Drf Guarantee
  14. 28:03Execution Graphs
  15. 30:13Rf Edge
  16. 31:23Axiomatic Memory Model
  17. 35:53Rc11 Memory Model
  18. 39:58Example Program
  19. 53:17Modular Relaxed Dependencies
  20. 54:22Data Race Freedom Guarantee
  21. 59:23Mainstream Memory Models
  22. 1:08:59Problems with Promising Semantics
~/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.