Description
Umbrella task to look through the pahole report for libjvm.so and see which classes need a bit of field reorganization to optimize footprint. The bar should be: the class should be instantiated often enough to matter, and the projected savings should be >=8 bytes, which would provide enough saving on 64-bit platforms not to to be eaten with object alignment.
Some of this work was done before inJDK-8006280.
A good starting point would be going over the output of:
```
pahole -MP shipilev-jdk/build/linux-aarch64-server-release/images/jdk/lib/server/libjvm.so
```
...and then looking at concrete classes with
```
pahole -M shipilev-jdk/build/linux-aarch64-server-release/images/jdk/lib/server/libjvm.so
```
The actual work should be done in subtasks, since it would naturally be grouped by component/area/cause.
Some of this work was done before in
A good starting point would be going over the output of:
```
pahole -MP shipilev-jdk/build/linux-aarch64-server-release/images/jdk/lib/server/libjvm.so
```
...and then looking at concrete classes with
```
pahole -M shipilev-jdk/build/linux-aarch64-server-release/images/jdk/lib/server/libjvm.so
```
The actual work should be done in subtasks, since it would naturally be grouped by component/area/cause.
Attachments
1.
|
Optimize C1 classes layout | Resolved | Neethu Prasad | ||
2.
|
Optimize C2 classes layout | Resolved | Neethu Prasad | ||
3.
|
Optimize Klass layout after JDK-8180450 | Resolved | Xiaolong Peng | ||
4.
|
Optimize InterpreterOopMap layout | Resolved | Xiaolong Peng | ||
5.
|
Optimize MethodData layout | Resolved | Xiaolong Peng |