[개발 일기] 2025.03.24 - JIT 컴파일러
·
개발 일기
💡 개요 자바는 정적 언어이고, JVM 위에서 동작하기 때문에 다른 언어들보다 느리다는 단점이 있다. 하지만 JVM 내부에는 JIT(Just-In-TIme) 컴파일러를 통해 성능을 향상한다는데 어떻게 그런 걸까? 📕 JIT 컴파일러 JIT 컴파일러는 런타임에 바이트코드를 네이티브 코드(기계어)로 변환하는 기술이다. JVM 내부에선 컴파일러 시, 모든 코드를 네이티브 코드로 변환하는 것이 아닐, JVM이 바이트 코드를 해석하면서 실행한다. 그런데 바이트 코드를 한 줄 읽고, 또 그 코드를 네이티브 코드로 변환하면 당연히 속도가 드려질 수밖에 없다. (참고로 이 방식을 인터프리팅이라고 한다.) JIT 컴파일러는 이를 해결하기 위해 핫스팟(반복적으로 사용되는 코드)을 감지해서 네이티브 코드로 변..