Найти в Дзене
Java

🧠 Быстрый профилинг Java: -XX:+PrintCompilation

🧠 Быстрый профилинг Java: -XX:+PrintCompilation Хотите понять, что JIT-компилятор делает с вашим кодом и где реально тратится время? Есть скрытая, но очень полезная фича JVM — флаг: java -XX:+UnlockDiagnosticVMOptions -XX:+PrintCompilation -jar app.jar 📌 Что даёт? JVM начнёт логировать все методы, которые JIT компилирует, и в какой момент. Вы увидите: - какие методы вызываются чаще всего (горячие точки); - какие инлайнятся и оптимизируются; - где есть неожиданные “узкие места”. 💡 Зачем это нужно? - Быстро найти кандидатов на оптимизацию; - Понять, почему приложение медленно стартует (компиляция тяжёлых методов); - Увидеть, какие части кода JIT не трогает (и, возможно, почему). ⚠️ Нюанс: это диагностический инструмент. На продакшене лучше использовать аккуратно (или дублировать трафик на стенд). 👉 Хочешь глубже? Смотри ещё -XX:+PrintInlining — покажет какие методы JVM решила инлайнить (и почему отказалась). Быстрый взгляд на JIT — и вы понимаете поведение кода куда глубже.

🧠 Быстрый профилинг Java: -XX:+PrintCompilation

Хотите понять, что JIT-компилятор делает с вашим кодом и где реально тратится время?

Есть скрытая, но очень полезная фича JVM — флаг:

java -XX:+UnlockDiagnosticVMOptions -XX:+PrintCompilation -jar app.jar

📌 Что даёт?

JVM начнёт логировать все методы, которые JIT компилирует, и в какой момент.

Вы увидите:

- какие методы вызываются чаще всего (горячие точки);

- какие инлайнятся и оптимизируются;

- где есть неожиданные “узкие места”.

💡 Зачем это нужно?

- Быстро найти кандидатов на оптимизацию;

- Понять, почему приложение медленно стартует (компиляция тяжёлых методов);

- Увидеть, какие части кода JIT не трогает (и, возможно, почему).

⚠️ Нюанс: это диагностический инструмент. На продакшене лучше использовать аккуратно (или дублировать трафик на стенд).

👉 Хочешь глубже? Смотри ещё -XX:+PrintInlining — покажет какие методы JVM решила инлайнить (и почему отказалась).

Быстрый взгляд на JIT — и вы понимаете поведение кода куда глубже.