Alias Analysis for JavaScript Program Optimization

자바스크립트 프로그램 최적화를 위한 별칭 분석

  • Jo, Gang-Won (School of Computer Science and Engineering, Seoul National University) ;
  • Kim, Hong-June (School of Computer Science and Engineering, Seoul National University) ;
  • Lee, Joo-Hwan (School of Computer Science and Engineering, Seoul National University) ;
  • Nah, Jeong-Ho (School of Computer Science and Engineering, Seoul National University) ;
  • Lee, Jae-Jin (School of Computer Science and Engineering, Seoul National University)
  • 조강원 (서울대학교 컴퓨터공학부) ;
  • 김홍준 (서울대학교 컴퓨터공학부) ;
  • 이주환 (서울대학교 컴퓨터공학부) ;
  • 나정호 (서울대학교 컴퓨터공학부) ;
  • 이재진 (서울대학교 컴퓨터공학부)
  • Published : 2011.06.29

Abstract

웹 애플리케이션의 사용이 늘어남에 따라 자바스크립트 프로그램의 성능을 높이는 것이 중요한 문제가 되었다. 자바스크립 프로그램에 대해 별칭 분석을 수행하면 더 많은 최적화가 가능해지지만, 자비스크립트가 가지는 동적인 특성으로 인해 분석 방법을 고안하는 데 어려움이 있었다. 본 논문에서는 자바스크립트의 주요한 동적 특성을 온전하게 다루는 별칭 분석 알고리즘을 최초로 제안한다. 제안한 방법은 별칭 그래프를 생성하여 프로그램 내의 별칭 관계를 완전하게 찾아내며, 또한 실행시킬 코드가 동적으로 추가될 때마다 이전에 이루어졌던 최적화가 유효한지 검사한다. 별칭 분석 결과를 이용하여 V8 자바스크립트 엔진에서 추가적으로 최적화를 수행한 결과, 유의미한 수행 시간 감소를 확인할 수 있었다.

Keywords

Acknowledgement

Supported by : 한국과학재단