Конференция разработчиков
высоконагруженных систем
Хочу быть в курсе событий!
Главная → 2013 → Архитектуры
JIT-компиляция в виртуальной машине Java
Обеспечение достойной производительности высокоуровневого языка с динамической типизацией - непростая задача. Just-in-time (JIT) компиляция - динамическая генерация машинного кода с учетом информации, собранной во время выполнения приложения - ключевой элемент производительности виртуальной машины (будь то Java, .NET или даже JavaScript). JIT-компилятор, в свою очередь, должен иметь впечатляющий набор трюков и оптимизаций, что бы компенсировать "динамизм" языка.
В докладе речь пойдет о HotSpot JVM (бесплатной JVM от Oracle) и её архитекте JIT компиляции. В частности, будут освещены такие темы, как:
- принцип много уровневой компиляции;
- подмена выполняемого кода "на лету";
- девиртуализация вызовов;
- "escape analysis" и "scalar replacement";
- взаимодействие системы управления памятью ("сборка мусора") и компилятора.