IPSJ SIG Technical Report Vol.2016-ARC-221 No /8/9 GC 1 1 GC GC GC GC DalvikVM GC 12.4% 5.7% 1. Garbage Collection: GC GC Java GC GC GC GC Dalv

Similar documents
JavaScript Web Web Web Web Web JavaScript Web Web JavaScript JavaScript JavaScript GC GC GC GC JavaScript SSJSVM GC SSJSVM GC GC GC SSJSVM GC GC SSJSV

IPSJ SIG Technical Report Vol.2013-ARC-206 No /8/1 Android Dominic Hillenbrand ODROID-X2 GPIO Android OSCAR WFI 500[us] GPIO GP


生活設計レジメ

I II III 28 29

44 4 I (1) ( ) (10 15 ) ( 17 ) ( 3 1 ) (2)


17 Proposal of an Algorithm of Image Extraction and Research on Improvement of a Man-machine Interface of Food Intake Measuring System

HTM RaR HTM 2. 2) 3) HTM 2 3 Yoo 4) HTM Adaptive Transaction Scheduling Akpinar 5) HTM Gaona 6) HTM 3. Read-after-Read HTM 3.1 Read-after-Read Read Wr

& Vol.5 No (Oct. 2015) TV 1,2,a) , Augmented TV TV AR Augmented Reality 3DCG TV Estimation of TV Screen Position and Ro

26 FPGA FPGA (Field Programmable Gate Array) ASIC (Application Specific Integrated Circuit) FPGA FPGA FPGA FPGA Linux FreeDOS skewed way L1

IPSJ SIG Technical Report Vol.2013-ARC-203 No /2/1 SMYLE OpenCL (NEDO) IT FPGA SMYLEref SMYLE OpenCL SMYLE OpenCL FPGA 1

2). 3) 4) 1.2 NICTNICT DCRA Dihedral Corner Reflector micro-arraysdcra DCRA DCRA DCRA 3D DCRA PC USB PC PC ON / OFF Velleman K8055 K8055 K8055

IPSJ SIG Technical Report Vol.2012-CG-148 No /8/29 3DCG 1,a) On rigid body animation taking into account the 3D computer graphics came

Source: Intel.Config: Pentium III Processor-Intel Seattle SE440BX-2, 128MB PC100 CL2 SDRAM Intel 440BX-2 Chipset Platform- Diamond Viper 550 /

28 Docker Design and Implementation of Program Evaluation System Using Docker Virtualized Environment

i


Wide Scanner TWAIN Source ユーザーズガイド

IPSJ SIG Technical Report Vol.2014-DBS-159 No.6 Vol.2014-IFAT-115 No /8/1 1,a) 1 1 1,, 1. ([1]) ([2], [3]) A B 1 ([4]) 1 Graduate School of Info

IPSJ SIG Technical Report Vol.2009-DPS-141 No.20 Vol.2009-GN-73 No.20 Vol.2009-EIP-46 No /11/27 1. MIERUKEN 1 2 MIERUKEN MIERUKEN MIERUKEN: Spe

Iteration 0 Iteration 1 1 Iteration 2 Iteration 3 N N N! N 1 MOPT(Merge Optimization) 3) MOPT MOP

jssst07.dvi

Vol.55 No (Jan. 2014) saccess 6 saccess 7 saccess 2. [3] p.33 * B (A) (B) (C) (D) (E) (F) *1 [3], [4] Web PDF a m

JTA108fiü“e02/3.3/CID

Web Basic Web SAS-2 Web SAS-2 i

(a) 1 (b) 3. Gilbert Pernicka[2] Treibitz Schechner[3] Narasimhan [4] Kim [5] Nayar [6] [7][8][9] 2. X X X [10] [11] L L t L s L = L t + L s

B HNS 7)8) HNS ( ( ) 7)8) (SOA) HNS HNS 4) HNS ( ) ( ) 1 TV power, channel, volume power true( ON) false( OFF) boolean channel volume int

untitled

福祉行財政と福祉計画[第3版]

橡ミュラー列伝Ⅰ.PDF

Microsoft Word - hozon-fujimura-HP-伊勢工業高校における造船教育の歴史から学ぶ

1 (1) (2)

- 2 -


II III I ~ 2 ~

中堅中小企業向け秘密保持マニュアル

IPSJ SIG Technical Report Vol.2011-IOT-12 No /3/ , 6 Construction and Operation of Large Scale Web Contents Distribution Platfo

2 3 Q1 Q3 Q4 Q2

,,,,., C Java,,.,,.,., ,,.,, i

ActionScript Flash Player 8 ActionScript3.0 ActionScript Flash Video ActionScript.swf swf FlashPlayer AVM(Actionscript Virtual Machine) Windows


shift/reset [13] 2 shift / reset shift reset k call/cc reset shift k shift (...) k 1 + shift(fun k -> 2 * (k 3)) k 2 * (1 + 3) 8 reset shift reset (..

SQUFOF NTT Shanks SQUFOF SQUFOF Pentium III Pentium 4 SQUFOF 2.03 (Pentium 4 2.0GHz Willamette) N UBASIC 50 / 200 [


[1] [2] [3] (RTT) 2. Android OS Android OS Google OS 69.7% [4] 1 Android Linux [5] Linux OS Android Runtime Dalvik Dalvik UI Application(Home,T

Vol. 48 No. 4 Apr LAN TCP/IP LAN TCP/IP 1 PC TCP/IP 1 PC User-mode Linux 12 Development of a System to Visualize Computer Network Behavior for L

. IDE JIVE[1][] Eclipse Java ( 1) Java Platform Debugger Architecture [5] 3. Eclipse GUI JIVE 3.1 Eclipse ( ) 1 JIVE Java [3] IDE c 016 Information Pr

Transcription:

GC 1 1 GC GC GC GC DalvikVM GC 12.4% 5.7% 1. Garbage Collection: GC GC Java GC GC GC GC DalvikVM[1] GC 1 Nagoya Institute of Technology GC GC 2. GC GC 2.1 GC 1 c 2016 Information Processing Society of Japan 1

1 GC GC Mark & Sweep[2] GC Copying[3] Reference Counting[4] GC 3 [5] Mark & Sweep 2.2 GC Concurrent GC[6] Concurrent GC GC GC Concurrent GC GC GC SILENT[7] Network Attached Processing NAP [8] Concurrent GC GC 3. GC GC GC 3.1 GC GC GC DalvikVM Mark & Sweep GC gem5 [9] DalvikVM GC DalvikVM GCBench[10] AOBench[11] SPECjvm2008[12] 5 7 GC 80% 46% GC GC 3.2 DalvikVM DalvikVM c 2016 Information Processing Society of Japan 2

1 X 1 10 50 100 200 AOBench 345 151 37 20 11 GCBench 61,717 6,312 1,269 636 319 crypto.rsa 2,789 1,418 344 178 93 crypto.aes 2,804 854 218 115 61 crypto.signverify 2,801 1,412 349 180 94 compress 627 321 84 45 25 serial 4,269 1,156 313 165 87 DalvikVM Mark 3.1 GC 1 X X = 10 10 3.1 crypto.rsa crypto.signverify X = 1 X = 10 2 GC 4. GC 4.1 GC GC GC 2 4 A D c 2016 Information Processing Society of Japan 3

A (i) A A A (a) A D (ii) D C C C C 4.2 DalvikVM LRU LRU LRU 3 GC 3 A D 3 A (i) A A B C (ii) A C B (iii) (a) D (iv) 5. 5.1 5.1.1 4.2 LRU c 2016 Information Processing Society of Japan 4

2 CAM Content Addressable Memory Address LRU prev next prev next Head Tail #Addr 5.1.2 GC CAM RAM RAM 4 Victim Index 5.2 5.2.1 LRU 4 B B B A C (a) B (b) c 2016 Information Processing Society of Japan 5

2 Platform Processor Clock Memory OS ARM-RealView PBX ARMv7 2.0 GHz 256 MB Linux 2.6.38.8-gem5 5 (c) B A C A next C 2 C prev A 0 Head B 5.2.2 5 D D D (a) D D D Victim Index D (b) D (c) D Victim Index Victim Index 6. 6.1 gem5 2 DalvikVM GCBench[10] AOBench[11] SPECjvm2008[12] 5 7 gem5 10 3.2 1 CAM CAM TLB 50 c 2016 Information Processing Society of Japan 6

6 GC 1 X = 100 X = 200 X = 200 X = 100 100 200 100 200 100 200 200 6 200 3 64 192 6.2 GC GC GC GC 6.2.1 GC GC 6 6 2 (MS) (P) Mark & Sweep GC (MS) GC 1 MarkRoot ScanMarked Sweep misc Mark & Sweep (MS) (P) crypto.rsa GC ScanMarked crypto.signverify ScanMarked 12.4% GC 5.7% GC crypto.rsa crypto.signverify compress Mark & Sweep misc GC GC ScanMarked GC 2cycles 1cycle GC (P) 1.8% 5.1.2 6.2.2 GC GC 7 GC GC GC 7 6 c 2016 Information Processing Society of Japan 7

50% 62% 50 7 GC (CO) Concurrent GC (MS) 1 (P) GC Concurrent GC (CO) 2.2 AOBench compress GC 26.0% 7.1% 6.3 5.1.2 LRU LRU GC 6.4 6.1 50 3 64 32bit 8bit 8bit 300Byte CAM 8bit 3 2bit 2bit 3 32 3 = 96bit 784Byte RAM 1KByte 7. GC GC GC Mark & Sweep GC 12.4% Concurrent GC c 2016 Information Processing Society of Japan 8

GC GC GC GC [1] Bornstein, D.: Dalvik Virtual Machine Internals, Google I/O 2008 (2008). [2] McCarthy, J.: Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I, Communications of the ACM, Vol. 3, pp. 184 195 (1960). [3] Minsky, M.: A LISP Garbage Collector Algorithm Using Serial Secondary Storage, Technical report, Massachusetts Institute of Technology (1963). [4] Collins, G. E.: A Method for Overlapping and Erasure of Lists, Communications of the ACM, Vol. 3, pp. 655 657 (1960). [5] (2010). [6] Ossia, Y., Ben-Yitzhak, O., Goft, I., Kolodner, E. K., Leikehman, V. and Owshanko, A.: A Parallel, Incremental and Concurrent GC for Servers, Proc. ACM SIG- PLAN Conf. on Programming Language Design and Implementation (PLDI 02), pp. 129 140 (2002). [7] Takeuchi, I., Yamazaki, K., Amagai, Y. and Yoshida, M.: Lisp can be Hard Real Time, Proc. Japan Lisp User Group Meeting (JLUGM) (2000). [8] Click, C., Tene, G. and Wolf, M.: The Pauseless GC Algorithm, Proc. 1st ACM/USENIX Int l Conf. on Virtual Execution Environments (VEE 05), pp. 46 56 (2005). [9] Binkert, N., Beckmann, B., Black, G., Reinhardt, S. K., Saidi, A., Basu, A., Hestness, J., Hower, D. R., Krishna, T., Sardashti, S., Sen, R., Sewell, K., Shoaib, M., Vaish, N., Hill, M. D. and Wood, D. A.: The gem5 Simulator, ACM SIGARCH Computer Architecture News, Vol. 39, pp. 1 7 (2011). [10] Boehm, H.: An Artificial Garbage Collection Benchmark, http://www.hpl.hp.com/personal/hans Boehm/ gc/gc bench.html. [11] Fujita, S.: Ambient Occlusion Benchmark, http://code.google.com/p/aobench/. [12] SPEC.: SPECjvm2008 benchmarks, http://www.spec.org/jvm2008/ (2008). c 2016 Information Processing Society of Japan 9