Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Minimal Value Types in Java - Implementation and Optimization

Java via YouTube

Overview

Explore the experimental implementation of Minimal Value Types in Java through this 45-minute conference talk. Dive into the subset of JVM changes required to support Value Types without exposing them through the Java language compiler. Learn about clever uses of MethodHandles and byte code generation to preview Value Types capabilities. Examine key JVM modifications, including value type representation in the JVM model, implementation strategies, data layout optimization, and new JIT optimizations. Discover the impact on bytecode verification, class loading, and early performance results. Gain insights into design trade-offs, open issues, and potential models of usage for this early access preview of the Valhalla Value Types project.

Syllabus

Intro
MVT: value types without value types
Deriving the Value Class - 19
Deriving the value class - HotSpot
Value Types Flattening
Array Flattening, not so simple
Value Bytecodes
Separate compilation breaking the calling convention
Slot design alternatives
Interpreter changes in HotSpot VM
Hotspot interpreter on-heap / off-heap values
Hotspot: thread local buffer management
Hotspot: Values format
Example: Complex number using POJOS
Example: Complex number using Value Types
Field Flattening
Flattened fields - 19
Value types methods and interfaces
Value types and generic code

Taught by

Java

Reviews

Start your review of Minimal Value Types in Java - Implementation and Optimization

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.