Browse

자바스크립트에서의 Just-in-Time Compiler 모듈을 활용한 Ahead-of-Time Compiler 설계 및 구현

Cited 0 time in Web of Science Cited 0 time in Scopus
Authors
유영호
Advisor
문수묵
Major
전기·컴퓨터공학부
Issue Date
2012-02
Publisher
서울대학교 대학원
Description
학위논문 (석사)-- 서울대학교 대학원 : 전기·컴퓨터공학부, 2012. 2. 문수묵.
Abstract
최근 스마트폰, 타블렛PC, 스마트TV등의 사용이 늘면서 모바일 기기의 성능이 중요해지고 있다. 이러한 모바일 환경에서 가장 많이 활용되는 부분은 인터넷 등을 이용하는 웹 서비스로 웹 브라우저의 성능이 모바일 환경에 상당한 비중을 차지하고 있다. 이러한 웹 브라우징에는 자바스크립트 언어의 수행 비중이 상당한데, 자바스크립트 언어는 휴대성과 이식성이 뛰어나 개별적으로도 활용하는 등 그 중요성이 점점 커지고 있는 현실이다. 하지만 자바스크립트 언어의 역동적인 특성 등으로 인해 제한된 모바일 환경의 하드웨어에서는 자바스크립트의 수행이 병목으로 작용하고 있는 실정이다.
따라서 자바스크립트를 수행하는 엔진의 성능이 중요한 이슈가 되고 있고, 이들의 성능 향상을 위해 적시 컴파일러(JITC, Just-in-Time Compiler) 방식이 소개되었다. 하지만 자바스크립트 언어의 특성은 기존의 언어들과 상당히 다르기 때문에 기존의 적시 컴파일러 방식은 자바스크립트 언어에서는 크게 효과를 보지 못하고 있다.
본 논문에서는 자바스크립트 엔진의 성능 향상을 위하여 아직까지 자바스크립트 엔진의 최적화 방식으로 시도 되지 않은 방식으로 컴파일 오버헤드를 줄일 수 있는 선행 컴파일러(AOTC, Ahead-of-Time Compiler)를 제안한다. 또한 기존의 다른 선행 컴파일러 구현에는 없던 문제로 자바스크립트 엔진의 특성으로 인한 객체 생성 및 주소 배치 문제에 대해 설명한 뒤 이에 대한 해결 방법으로 키 값에 의한 객체 주소 재배치를 제안하였다. 또 실험 결과를 통해 구현한 선행 컴파일러가 머신코드 생성 시간을 약54% 줄여 수행 성능을 향상시켰음을 확인하였다.
As mobile environment is getting critical in IT industry, a performance of mobile device becomes more important. A performance of web browser is one of the most important factors, because web services which include internet searching, web application etc. are primary purpose of using mobile devices. The execution of JavaScript language which has a portable and dynamic property is a crucial part of mobile web browser. But, dynamic property of JavaScript limits its performance, especially in mobile environment.
Just-in-Time Compiler(JITC) in JavaScript Engine is already developed and embedded in most of the web browser. But as JavaScript is dynamic language, JITC which provides substantial performance gain for static language doesnt provide much benefit.
In this paper, we propose Ahead-of-Time Compiler(AOTC) in JavaScript Engine which hasnt developed yet. AOTC for JavaScript has some difficulties(Object instantiation and address location derived from JavaScript engines property) that didnt exist for other languages. We propose objects address relocation by key to solve these problems. Our AOTC has decreased 54% of compilation overhead.
Language
kor
URI
https://hdl.handle.net/10371/155569

http://dcollection.snu.ac.kr/jsp/common/DcLoOrgPer.jsp?sItemId=000000001811
Files in This Item:
There are no files associated with this item.
Appears in Collections:
College of Engineering/Engineering Practice School (공과대학/대학원)Dept. of Electrical and Computer Engineering (전기·정보공학부)Theses (Master's Degree_전기·정보공학부)
  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Browse