728x90
자바의 실행 속도에 대한 의문점
자바의 성능에 대해 궁금한 점이 있습니다. 자바는 JVM 위에서 동작하기 때문에 네이티브 언어에 비해 실행속도가 느리다고 알고 있습니다.
하지만 JVM은 JIT 컴파일러를 통해 실행 중에 바이트 코드를 네이티브 코드로 컴파일하여 성능을 향상시킨다고 합니다.
어떻게 실행 속도가 느리다는 단점을 극복하고 성능을 향상시키는 지 궁금했습니다.
JIT 컴파일러를 통한 성능 최적화
자바는 실제로 두 가지 과정을 거칩니다.
- 초기에는 바이트코드를 인터프리터 방식으로 실행하기 때문에 네이티브 언어보다 느립니다.
- 하지만 JIT(Just-In-Time) 컴파일러가 실행 중에
- 자주 실행되는 코드(Hot Spot)를 감지하여
- 해당 부분을 네이티브 코드로 컴파일
- 이후에는 컴파일된 네이티브 코드를 직접 실행
따라서
- 초기 실행은 느릴 수 있지만
- 실행이 반복될수록 네이티브 코드로 최적화되어
- 결과적으로 네이티브 언어에 근접한 성능을 낼 수 있습니다.
이것이 바로 JVM의 장점이자 자바가 실행 속도가 느리다는 단점을 극복하는 방법입니다.