Compact Strings
summary
Covers JDK 9 changes to java.lang.String: Compact Strings (using single-byte storage for strings that fit in a single-byte charset to reduce memory and often improve performance) and Indify String Concat (using invokedynamic-based string concatenation so runtime can optimize concatenation without requiring recompilation). Explains rationale and implementation pitfalls for making these core library/runtime changes.
AI-written summary · about
chapters (47)
- 0:00Intro
- 0:13Intro: Expectations
- 1:30Compact Strings: String internals
- 2:54Compact Strings: Some RealWorld (tm) Data
- 4:05Compact Strings: Wouldn't It Be Awesom
- 5:00Compact Strings: Thou shalt Not Regress
- 6:14Compact Strings: Bird's Eye View
- 7:52Compact Strings: JDK Development In 5
- 8:35CS, Coders: OOP
- 11:12CS, Coders: Hide Me Under The Tree
- 12:41CS, Coders: Tagged Arrays
- 16:20CS, Zeroes: What kind of Sourcery Is Th
- 17:12CS, Zeroes: Truth or Dare
- 21:17CS, Kill Switch: Naively...
- 22:03CS, Kill Switch: Working...
- 24:13CS, Kill Switch: Will This Work?
- 25:06CS, Kill Switch: What About This One?
- 25:46CS, Kill Switch: It's ALIVE!
- 26:36CS, Kill Switch: Will This Do?
- 27:46CS, Kill Switch: Or This?
- 29:38CS, Arrays: String
- 30:52CS, getChar: What Could Possibly Be Simpler
- 31:40CS, getChar: Running With Scissors
- 32:42CS, getChar: Running With Longer Scissors
- 33:23CS, getChar: Recap
- 36:55CS, Catharsis: Performance
- 38:13Indify String Concat: See Any Concat In Bytecode?
- 38:38Indify String Concat: OptimizeString Concat
- 40:40Indify String Concat: Caveat #1
- 41:29Indify String Concat: Caveat #2: «Univer
- 42:43Indify String Concat: Caveat #3: Reliab
- 43:34Indify String Concat: Insight
- 44:52Indify String Concat: Late Binding
- 45:43Indify String Concat: invokedynamic magic
- 47:34ISC, Init: Oops
- 48:01ISC, Init: Thank You, Dear Jigsaw
- 49:16ISC, Startup: Take This HelloWorld Example
- 50:22ISC, Startup: Necessary Evil?
- 50:59ISC, Strategies: Basic
- 51:41ISC, Strategies: More advanced
- 52:23ISC, Strategies: Even more advanced
- 53:07ISC, Strategies: Something completely dif
- 53:57ISC, Catharsis: Performance
- 55:10Rendezvous: Compact Strings + Indy String Concat
- 55:50Rendezvous: String Fusion
- 56:47Rendezvous: Future
- 58:41Conclusion: What About Real Applications?
related talks
40mWhat Every Java Programmer Should Know About Strings
46mEnough java.lang.String to Hang Ourselves ...
48mEnough java.lang.String to Hang Ourselves ...
51mRethinking Java String Concatenation
46mEnough java.lang.String to Hang Ourselves...
32mClojure, Java 9, and You
53mJava Performance Update 2024
48mJava 9 Performance
