~/talk

The Mutability Matrix of Pain: An Accessible Exploration of the JVM Heap

Talkat Philly ETE 2015 · 2015-04-07..04-08· [java, concurrency]
name:J. Allen
links:none on file
slides:none on file

Explains the JVM memory model with concrete rules: mutability matrix of pain (final vs non‑final reference crossed with mutable vs immutable value) and why non‑final→mutable forces locks. Shows volatile on last field as a cheaper memory‑barrier trick to publish multiple field updates, and that actors (Akka) give a happens‑before per message. Covers costs: synchronized contended locks cause context switches; writing back to main memory can be ~66 ns; immutability via Scala case class copy increases GC pressure. Recommends jHiccup for jitter and to avoid >4GB heap with CMS/G1.

AI-written summary · about

  1. 0:00Introduction to JVM memory
  2. 2:26Java heap and shared state
  3. 9:24Concurrency vs parallelism
  4. 12:55Value identity and state
  5. 19:40Mutability matrix explained
  6. 23:36Volatile and synchronization
  7. 29:14Immutable data strategies
  8. 33:29Garbage collection tuning
  9. 36:06Q&A
~/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.