Publications

Detailed Information

자바스크립트 엔진을 위한 선택적 선행 컴파일러의 설계 및 구현 : A Design and Implementation of Selective Ahead-of-Time Compilation for JavaScript Engines

DC Field Value Language
dc.contributor.advisor문수묵-
dc.contributor.author박혁우-
dc.date.accessioned2017-07-14T02:46:46Z-
dc.date.available2017-07-14T02:46:46Z-
dc.date.issued2012-08-
dc.identifier.other000000003802-
dc.identifier.urihttps://hdl.handle.net/10371/122891-
dc.description학위논문 (석사)-- 서울대학교 대학원 : 전기·컴퓨터공학부, 2012. 8. 문수묵.-
dc.description.abstract자바스크립트 언어는 스크립트 언어 중 하나로 표현이 풍부하며 비전문가들도 쉽게 사용할 수 있어서 웹 환경에서 클라이언트 사이드 프로그래밍 언어로 널리 쓰이고 있다. 특히 웹앱(Web App)과 RIA(Rich Internet Application)의 등장으로 인해 웹 환경에서 자바스크립트 비중이 크게 증가하고 있다.
최근 들어 스마트폰, 태블릿 PC의 대중화로 모바일 기기에서 웹 서비스의 사용이 크게 늘고 있지만 자바스크립트 언어의 동적인 특성으로 인해 제한된 모바일 환경의 하드웨어에서는 자바스크립트 수행이 병목으로 작용하고 있는 것이 사실이다. 이 때문에 자바스크립트 엔진의 수행 성능이 중요한 이슈가 되고 있다.
현재 자바스크립트 엔진은 성능 향상을 위해 실행 중에 자바스크립트 코드로부터 기계어 코드를 생성하여 이를 수행하는 적시 컴파일(JITC, Just-in-Time Compiler) 방식을 채택하고 있다. 그러나 적시 컴파일 방식은 컴파일 오버헤드가 수행 시간에 그대로 포함되며 실제 웹 환경에서는 그 비중이 상당히 크다는 단점이 존재한다.
본 논문에서는 자바스크립트 엔진의 성능 향상을 위하여 선행 컴파일(AOTC, Ahead-of-Time Compiler) 방식을 도입하였다. 선행 컴파일 방식은 한번 생성된 기계어 코드를 저장한 뒤, 다음 수행에서 재사용하는 방식이다. 이 방식은 적시 컴파일 방식의 단점인 컴파일 오버헤드를 줄이는 데 효과가 있다. 실제로 선행 컴파일 방식을 적용한 결과, 성능 향상이 있었지만 보조 기억 장치의 저장 공간을 많이 필요로 하기 때문에 그대로 적용하기엔 무리가 있었다.
선행 컴파일 방식의 한계를 보완하기 위해 여기선 새로운 방식인 선택적 선행 컴파일(Selective-AOTC) 방식을 제안하였다. 선택적 선행 컴파일 방식은 선행 컴파일 방식을 선택적으로 적용하여, 적은 저장 공간을 사용하면서 동시에 최대한의 성능 이득을 얻는 것을 목표로 한다. 선택적 선행 컴파일러의 설계를 위해 컴파일 오버헤드와 생성된 기계어 코드의 크기를 기준으로 하는 선택 휴리스틱을 정하였다. 이를 토대로 구현한 결과 V8 벤치 마크에서 10.8%의 성능 향상이 있었고, 기존 선행 컴파일 방식과 비교할 때 65.1%의 저장 공간을 절약할 수 있었다.
-
dc.description.tableofcontents제1장 서론 1
제2장 SFX 자바스크립트 엔진 3
2.1. SFX 자바스크립트 엔진 개요 3
2.2. SFX 자바스크립트 엔진의 적시 컴파일 과정 7
2.3. SFX 자바스크립트 엔진의 컴파일 오버헤드 10
제3장 선행 컴파일러 12
3.1. 선행 컴파일 개요 12
3.2. 선행 컴파일러 설계 15
3.3. 중간 언어 단계 선행 컴파일러 19
3.4. 기계어 코드 단계 선행 컴파일러 22
3.5. 성능 측정 및 해결 과제 27
제4장 선택적 선행 컴파일러 31
4.1. 선택 휴리스틱 31
4.2. 선택적 선행 컴파일러 설계 35
4.3. 실험 결과 37
제5장 결론 및 향후 과제 41
참 고 문 헌 43
Abstract 44
-
dc.formatapplication/pdf-
dc.format.extent1595387 bytes-
dc.format.mediumapplication/pdf-
dc.language.isoko-
dc.publisher서울대학교 대학원-
dc.subject자바스크립트-
dc.subject자바스크립트 엔진-
dc.subject적시 컴파일-
dc.subject선행 컴파일-
dc.subject선택적 선행 컴파일-
dc.subject웹 최적화-
dc.subject.ddc621-
dc.title자바스크립트 엔진을 위한 선택적 선행 컴파일러의 설계 및 구현-
dc.title.alternativeA Design and Implementation of Selective Ahead-of-Time Compilation for JavaScript Engines-
dc.typeThesis-
dc.description.degreeMaster-
dc.citation.pagesⅵ, 45-
dc.contributor.affiliation공과대학 전기·컴퓨터공학부-
dc.date.awarded2012-08-
Appears in Collections:
Files in This Item:

Altmetrics

Item View & Download Count

  • mendeley

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

Share