Главная
Study mode:
on
1
Intro
2
Overview
3
What is Escape Analysis?
4
Partial Escape Analysis
5
EA Consuming Optimizations
6
Hotspot C2 EA and optimizations
7
Example of non escaping objects
8
Limitations of scalar replacement
9
How common is this issue?
10
Simple change to the experiment
11
Could we make scalar replacement work?
12
Considering the previous example...
13
Stack allocate if scalar replacement fails
14
What if C2 had stack allocation?
15
How did we implement this in C2
16
Bax.ackNode to the rescue
17
We had to...
18
GC roat scanning of stack allocated objects
19
Overlapping live object ranges
20
Current Limitations
21
Performance improvements
22
When and where can we see this patch?
23
Next steps
Description:
Explore the current state of JVM Escape Analysis and its downstream optimizations in this informative conference talk from the Jfokus VM Tech Summit 2020. Delve into the intricacies of escape analysis (EA) and its role in optimizing JVM workloads. Learn about scalar replacement of objects and how it differs from stack allocation. Examine how C2, Graal, and OpenJ9 utilize EA data for various optimizations. Discover potential improvements for C2 in the OpenJDK community to enhance JVM efficiency through post-EA optimizations. Gain insights from Charlie Gracie, a Principal Software Engineer at Microsoft with extensive experience in virtual machine development, as he shares his analysis of EA and its impact on heap pressure. Cover topics such as partial escape analysis, EA consuming optimizations, limitations of scalar replacement, and potential implementations of stack allocation in C2. Understand the performance improvements and current limitations of these optimizations, and explore future steps for enhancing JVM performance. Read more

Current State of JVM Escape Analysis and Downstream Optimizations

Java
Add to list
0:00 / 0:00