
Sign up to save your podcasts
Or


Episode description:Thomas Wuerthinger, Founder and Project Lead of GraalVM and Vice President at Oracle, joins Marco to unpack how modern Java runtimes actually work. They explore why duplicating compilers and garbage collectors across languages is a waste of engineering effort, how GraalVM grew from a research project into production technology, and why Native Image unexpectedly became its most impactful feature.
💡 In this episode:
GraalVM, Native Image, and Java performance
JIT vs AOT and predictable runtime behavior
Polyglot runtimes and shared memory models
Cloud-native Java, startup time, and memory footprint
Performance lessons from the One Billion Row Challenge
Branch misprediction and hardware-level bottlenecks
Research vs product engineering
AI in compilers and testing
🕐 Timestamps
(00:00) Intro
(01:09) Meet Thomas Wuerthinger & what GraalVM really is
(03:31) Why duplicating language runtimes is a waste
(06:08) How GraalVM started at Sun Microsystems Labs
(10:26) Writing an interpreter and getting a JIT “for free”
(14:26) Going open source and finding real users
(16:48) Why Native Image took off
(23:02) From research project to real product
(26:56) Native Image, Spring, Quarkus, and Java in the cloud
(35:38) Why JIT performance can be unpredictable
(39:31) When JIT still makes sense
(43:02) Python, JavaScript, and polyglot runtimes
(46:16) Using AI in compilers and testing
(01:04:06) The One Billion Row Challenge
(01:09:50) Branch misprediction and performance surprises
(01:13:26) How to think about performance optimization
(01:25:33) Giveaway question
(01:27:11) Rapid fire and wrap-up
New episodes every other Wednesday. Subscribe for in-depth conversations on software engineering, performance, and developer tools.
🎥 Watch the full episode on YouTube: https://youtu.be/naO1Up63I7Q
By IntelliJ IDEAEpisode description:Thomas Wuerthinger, Founder and Project Lead of GraalVM and Vice President at Oracle, joins Marco to unpack how modern Java runtimes actually work. They explore why duplicating compilers and garbage collectors across languages is a waste of engineering effort, how GraalVM grew from a research project into production technology, and why Native Image unexpectedly became its most impactful feature.
💡 In this episode:
GraalVM, Native Image, and Java performance
JIT vs AOT and predictable runtime behavior
Polyglot runtimes and shared memory models
Cloud-native Java, startup time, and memory footprint
Performance lessons from the One Billion Row Challenge
Branch misprediction and hardware-level bottlenecks
Research vs product engineering
AI in compilers and testing
🕐 Timestamps
(00:00) Intro
(01:09) Meet Thomas Wuerthinger & what GraalVM really is
(03:31) Why duplicating language runtimes is a waste
(06:08) How GraalVM started at Sun Microsystems Labs
(10:26) Writing an interpreter and getting a JIT “for free”
(14:26) Going open source and finding real users
(16:48) Why Native Image took off
(23:02) From research project to real product
(26:56) Native Image, Spring, Quarkus, and Java in the cloud
(35:38) Why JIT performance can be unpredictable
(39:31) When JIT still makes sense
(43:02) Python, JavaScript, and polyglot runtimes
(46:16) Using AI in compilers and testing
(01:04:06) The One Billion Row Challenge
(01:09:50) Branch misprediction and performance surprises
(01:13:26) How to think about performance optimization
(01:25:33) Giveaway question
(01:27:11) Rapid fire and wrap-up
New episodes every other Wednesday. Subscribe for in-depth conversations on software engineering, performance, and developer tools.
🎥 Watch the full episode on YouTube: https://youtu.be/naO1Up63I7Q