Publications

Detailed Information

Optimizing Memory Management in Virtual Machine : 가상머신의 메모리 관리 최적화

DC Field Value Language
dc.contributor.advisor문수묵-
dc.contributor.author최형규-
dc.date.accessioned2017-07-13T07:02:30Z-
dc.date.available2017-07-13T07:02:30Z-
dc.date.issued2014-02-
dc.identifier.other000000017537-
dc.identifier.urihttps://hdl.handle.net/10371/118977-
dc.description학위논문 (박사)-- 서울대학교 대학원 : 전기·컴퓨터공학부, 2014. 2. 문수묵.-
dc.description.abstractMemory management is one of key components in virtual machine and also affects overall performance of virtual machine itself. Modern programming languages for virtual machine use dynamic memory allocation and objects are allocated dynamically to heap at a higher rate, such as Java. These allocated objects are reclaimed later when objects are not used anymore to secure free room in the heap for future objects allocation. Many virtual machines adopt garbage collection technique to reclaim dead objects in the heap. The heap can be also expanded itself to allocate more objects instead. Therefore overall performance of memory management is determined by object allocation technique, garbage collection and heap management technique. In this paper, three optimizing techniques are proposed to improve overall performance of memory management in virtual machine. First, a lazy-worst-fit object allocator is suggested to allocate small objects with little overhead in virtual machine which has a garbage collector. Then a biased allocator is proposed to improve the performance of garbage collector itself by reducing extra overhead of garbage collector. Finally an ahead-of-time heap expansion technique is suggested to improve user responsiveness as well as overall performance of memory management by suppressing invocation of garbage collection. Proposed optimizations are evaluated in various devices including desktop, embedded and mobile, with different virtual machines including Java virtual machine for Java runtime and Dalvik virtual machine for Android platform. A lazy-worst-fit allocator outperform other allocators including first-fit and lazy-worst-fit allocator and shows good fragmentation as low as rst-t allocator which is known to have the lowest fragmentation. A biased allocator reduces 4.1% of pause time caused by garbage collections in average. Ahead-of-time heap expansion reduces both number of garbage collections and total pause time of garbage collections. Pause time of GC reduced up to 31% in default applications of Android platform.-
dc.description.tableofcontentsAbstract i
Contents iii
List of Figures vi
List of Tables viii
Chapter 1 Introduction 1
1.1 The need of optimizing memory management . . . . . . . . . . . 2
1.2 Outline of the Dissertation . . . . . . . . . . . . . . . . . . . . . . 3
Chapter 2 Backgrounds 4
2.1 Virtual Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Memory management in virtual machine . . . . . . . . . . . . . . 5
Chapter 3 Lazy Worst Fit Allocator 7
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2 Allocation with fits . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3 Lazy fits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.1 Lazy worst fit . . . . . . . . . . . . . . . . . . . . . . . . . 13
iii
3.4 Experimental results . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.4.1 LWF implementation in the LaTTe Java virtual machine 14
3.4.2 Experimental environment . . . . . . . . . . . . . . . . . . 16
3.4.3 Performance of LWF . . . . . . . . . . . . . . . . . . . . . 17
3.4.4 Fragmentation of LWF . . . . . . . . . . . . . . . . . . . . 20
3.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Chapter 4 Biased Allocator 24
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.3 Biased allocator . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.3.1 When to choose an allocator . . . . . . . . . . . . . . . . 28
4.3.2 How to choose an allocator . . . . . . . . . . . . . . . . . 30
4.4 Analyses and implementation . . . . . . . . . . . . . . . . . . . . 32
4.5 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.5.1 Total pause time of garbage collections . . . . . . . . . . . 36
4.5.2 Eect of each analysis . . . . . . . . . . . . . . . . . . . . 38
4.5.3 Pause time of each garbage collection . . . . . . . . . . . 38
4.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Chapter 5 Ahead-of-time Heap Management 42
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3 Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.3.1 Garbage Collection . . . . . . . . . . . . . . . . . . . . . . 48
5.3.2 Heap expansion heuristic . . . . . . . . . . . . . . . . . . 49
5.4 Ahead-of-time heap expansion . . . . . . . . . . . . . . . . . . . . 51
5.4.1 Spatial heap expansion . . . . . . . . . . . . . . . . . . . . 53
iv
5.4.2 Temporal heap expansion . . . . . . . . . . . . . . . . . . 55
5.4.3 Launch-time heap expansion . . . . . . . . . . . . . . . . 56
5.5 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.5.1 Spatial heap expansion . . . . . . . . . . . . . . . . . . . . 58
5.5.2 Comparision of spatial heap expansion . . . . . . . . . . . 61
5.5.3 Temporal heap expansion . . . . . . . . . . . . . . . . . . 70
5.5.4 Launch-time heap expansion . . . . . . . . . . . . . . . . 72
5.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Chapter 6 Conculsion 74
Bibliography 75
”요약 84
Acknowledgements 86
-
dc.formatapplication/pdf-
dc.format.extent6371769 bytes-
dc.format.mediumapplication/pdf-
dc.language.isoen-
dc.publisher서울대학교 대학원-
dc.subjectoptimization-
dc.subjectobject allocation-
dc.subjectgarbage collection-
dc.subjectheap management-
dc.subjectvirtual machine-
dc.subjectmemory management-
dc.subject.ddc621-
dc.titleOptimizing Memory Management in Virtual Machine-
dc.title.alternative가상머신의 메모리 관리 최적화-
dc.typeThesis-
dc.description.degreeDoctor-
dc.citation.pagesviii, 87-
dc.contributor.affiliation공과대학 전기·컴퓨터공학부-
dc.date.awarded2014-02-
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