Files
Claude e83c9949d8 Add jdk27-memory: compact object headers and G1-everywhere on a Spring Boot service
Spring Boot 4.1.1 catalog service measured on JDK 25, 26 and 27: live heap 320 MB to 273 MB with compact headers, per-class bytes per instance, container-sizing sweeps with real cgroup limits, 1-CPU Serial vs G1 with Native Memory Tracking, removed flags (MaxRAM, UseCompressedClassPointers), and a kernel OOM-kill check. Outputs in jdk27-memory/output.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01TF9JWFvJSNm6HVzswzZU5a
2026-09-24 15:09:55 +00:00

41 lines
1.1 KiB
Plaintext

== JDK 25
java 25.0.4.1 compact headers: false
id offset 16
priceCents offset 12
stock offset 24
active offset 28
sku offset 32
first field starts at byte 12 (so the header is at most 12 bytes)
a hard-coded 12-byte header would be right here
== JDK 26
java 26.0.2.1 compact headers: false
id offset 16
priceCents offset 12
stock offset 24
active offset 28
sku offset 32
first field starts at byte 12 (so the header is at most 12 bytes)
a hard-coded 12-byte header would be right here
== JDK 27
java 27 compact headers: true
id offset 8
priceCents offset 16
stock offset 20
active offset 24
sku offset 28
first field starts at byte 8 (so the header is at most 8 bytes)
a hard-coded 12-byte header would be WRONG here
== JDK 27 -XX:-UseCompactObjectHeaders
java 27 compact headers: false
id offset 16
priceCents offset 12
stock offset 24
active offset 28
sku offset 32
first field starts at byte 12 (so the header is at most 12 bytes)
a hard-coded 12-byte header would be right here