Commits
Tarun Sukhani authored 6d0d4f3e21b
docs(deployment): the measured startup profile of a bundle, with and without the AOT cache (PF-180)
"Where a bundle's startup time goes" in deployment.textile: the
"Started in" line of a freshly generated application with one JPA
entity on in-memory H2, median of five starts, JDK 25.0.2, macOS arm64.
no cache AOT cache
default collector, log line 1,301 ms 495 ms
default collector, launch 1,759 ms 809 ms (to the first 200)
ZGC + vector module, line 1,312 ms 701 ms
ZGC + vector module, launch 1,767 ms 1,037 ms
Without a cache JPAPlugin (Hibernate) is two fifths of the start and
logging plus routes (Log4j, Groovy) another third: library class
loading, which is what the cache keeps. The application's own classes
are a small share that the cache hardly changes: 1,500 generated
controllers spend 127 ms in "classes" without a cache and 107 ms with
one.
These are the numbers for the release note of the AOT cache. jclaw's
own bundle is not measured yet.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KDUoh3KhBpfjXn4rV6H356