달빅 가상 머신에서의 장기 추적 방식 적시 컴파일

구글의 모바일 플랫폼인 안드로이드에서는 기존의 자바 어플리케이션을 수행하기 위해 자바 클래스 파일을 덱스(dex) 파일로 변경한 뒤 달빅 가상 머신을 통해 수행한다. 달빅은 레지스터 기반의 가상머신으로 인터프리터 외에 추적(trace) 기반의 경로 컴파일 정책을 사용하여 달빅 바이트코드를 머신 코드로 번역하여 수행하는 적시 컴파일러를 탑재하였다. 본 논문에서는 달빅 가상 머신의 적시 컴파일러에서 사용하는 추적 단위를 확장하는 장기 추적 방식으로 변경하는 것을 제안한다. 이를 통해 더 많은 바이트코드 명령어를 함께 컴파일하여 컴파일 시간은 길어져도 더 좋은 머신 코드를 생성할 수 있어 하이브리드 컴파일 환경 등을 구축하는 데 유용하다. 실험을 통해 달빅 가상 머신의 성능 향상 가능성을 확인하였다.