It's strange how AOT compilers usually have different modes for optimising time or space usage, but JITs rarely have modes like "prefer fast startup".
The vast majority of JITs seem to focus on runtime of hot code after warming up.
miniblog.
Related Posts
This comparison of OpenSmalltalkVM and TruffleSqueak is a really effective demonstration of JITs.
TruffleSqueak initially has a lower framerate, but eventually exceeds OpenSmalltalkVM. As soon as the GUI is used (at 3:30), the framerate drops again!
JITs are blackboxes that can make it hard to reason about performance in production:
Implementing Execute-Only Memory in userland: https://www.tedunangst.com/flak/post/userland-xnr-jit (an elegant way of hardening JITs to ROP exploits!)