Stress-testing Control Structures for Dynamic Dispatch in Java - Hal

5 downloads 4925 Views 635KB Size Report
Apr 11, 2006 - dynamic dispatch implementations and related work at software, run-time system and hardware level. Section 3 presents our methodology and ...
Stress-testing Control Structures for Dynamic Dispatch in Java Olivier Zendra, Karel Driesen

To cite this version: Olivier Zendra, Karel Driesen. Stress-testing Control Structures for Dynamic Dispatch in Java. 2nd Java Virtual Machine Research and Technology Symposium (JVM’2002), Aug 2002, San Francisco, CA, USA, pp.105-118, 2002.

HAL Id: inria-00000111 https://hal.inria.fr/inria-00000111 Submitted on 11 Apr 2006

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destin´ee au d´epˆot et `a la diffusion de documents scientifiques de niveau recherche, publi´es ou non, ´emanant des ´etablissements d’enseignement et de recherche fran¸cais ou ´etrangers, des laboratoires publics ou priv´es.

Stress-testing Control Structures for Dynamic Dispatch in Java Published in Proceedings of the USENIX 2nd Java Virtual Machine Research and Technology Symposium, 2002 (JVM ’02) Olivier Zendra

Karel Driesen

INRIA Lorraine - LORIA / McGill University 615 Rue du Jardin Botanique, BP 101 54602 Villers-Les-Nancy Cedex, France

McGill University School of Computer Science - ACL Group Montreal, Quebec, Canada H3A 2A7     +*,- /.0*1 ( 2*43" 3""'*,- /.5*167 *

   

  ! "$# % &""'  ( )

>X;lKdO4DN>XG]m:§H>ED:ME< GOvP">X;iB>X;QxK SB">EDFE;GOZLS/ADTDU"PD G>XGU"G+< PMXO„ED+¬¬ ­˜£`m y U@2HžG)9F6O`aD U"PiD)G+>G+UG+EDxGHOZL+O`SVKL+O K;"OxK SGH"Ox=?X;~E;B>E;"QRKSTSVU;@WG+>XK;Y@Z< MEMADZI >ADCX;Q MA< ;"QU< QO]D\ME>XdOfeNgCgh< ;iBkjXK;DZI5uNH">E@2Hk< L+OvFLK;"OpG+Kw@Z< UiD >E;"QxF>XF6OZME>X;OoP"U"P"P"MEO]D]m y O]lO]L+ElOC>E=?F"MXO]=?OZ;G+< G>EK;wG+O]@2H";">AzU"O]D{HEQ;"O4B}>E;~GHOfFX;|KL2BOZLpGKFiO]L SVKL=€B9a ;E@RB">EDFG+H"KU"GpLO]MX9>E;"QYK;G+H"O]DOxOZ‚FiO];D >ElO P"L2< ;i@2HY>X;iD)G+LU@`G>EK;D]mpƒ{;SVKLGU";iXGC>ED„B>X…R@`U"MXG„GK @ZK=?F< L+O^GH"OoF6OZLSVKL+=o< ;@ZO?K S GH"O4D OR@ZK=?FiOZG>E;"Q[GO4@2Ha ;">AzU"O]D]IEzU"OC>ADNP6O]D GsU";a BO]LxuNH< Gf@`K;B>XG>EK;DfD)G+>XMEM{HiAD{zU"O]D G>EK;5IiP9ˆ=^O4A@fB">EDFEDOZME9x@ZK;a G+LKMXMEO]B‹O`‚O4@`UG+>XK;›@`K;iB>G+>XK;D]m‡œkOcD GL+O]D+D?GO4D)GxGH"O4D O @ZK;GL+KM5D GL+U@`GU"L+O]DNUiD >E;"Qo=?>E@ZLKatP6OZ;i@2H"=o< L+dD]IOZ=?F"HiX]>X;Q}GH"O]>XLˆD)G+LO];"QHG2Dx< ;iBžu%O4< d;"O]D+DO]D]I%>E;›KL2BO]LoGK BOZGO]L=?>E;"OˆGH"O[F"L+O]@Z>EDOfOZ‚O]@`U"G>EK;|@Z>XL2@`U=?D G+A@2H[EDFX;?KP"_)O]@WGatKL>EOZ;G+O]B†FLKQL2< =oDZmT¯"KL->E;D G+< ;i@`OIl>XLGUX;lK@]XK;D5>E;vjE@]< MEMX9cO`‚FiO];D>XlOvK;=?KBOZL+; BOZO]F"ME9YF">EFiO]MX>E;"O]BF"L+K@`O]D+DKL2DZIP6O]@ZA@WGs>E;B>ELO4@WG{PL+X;iD)G+LU@`G>EK;DsGH< G < L+OCEF6OZME>X;"OCPU"P"P"MEO]D†« 8\ºsŸ:¹»$­bm

Keywords

nbGc>ADY;"K;"O`G+H"OZMEO]D+DYOZ‚@ZOZO4B>X;QME9¼B>X…R@`U"MXGcG+K›F"L+O]@`>ADOZME9 =?O]X=?OxDF6OZ;GpK;}B9;E@oB>ADFG2D O]MS P9‹L+O]XO];G+O]B‹F"L+KQL+XLGUE@2Hf=o< dO4D >GsB>X…?a @`U"MXG-GK\>EDKMAADFE=?O SVLK=¼G+H"OLU;G+>X=?O K SL+OZQa U"MA< L{@ZKB"Om¯"U"LGH"O]L=?KLOI@ZX;QRD)G)9MEO†XG+DOZMXS)I P"UGfE;"QkGH"O@Z< MEM{XME>G)9kG+KcBO`G+O]@`G?EK;v@Z< MEM

1. INTRODUCTION

¡ P_)O4@WGatKL>EOZ;GO4Bp=?O4DD+< QOsB>EDF< G+@2H?>EDX=^a F"MEOZ=?O];G2XK;JI-KL†=?O`G+H"KB0mw¥ GvL+U";qG>E=?OIšGHORKP_)O4@WG G+HXlO]D\EL G+U< M-=?O`G+H"KBc@]< MEM¦I0L+O`a G+L>EOZlO]DNG+H"O?@`KL+L+O]DFiK;B>E;"QR@`MAX¤i@C=?O`G+H"KBY< ;B ³

¥s;^O]D G>E=oEDF< G+@2HpKlOZL+H"O]X=vU"ME< a

G+>XK;JI@ZX;}« 8:º:¹¿­bm§H"OCAD F< G+@2H‹KlO]LH"O4XGH?< MEM=?O]=pP6OZL SVU";i@WG>EK;iD7BO]@ZMEEL G+U< MJ¢¦AD-G+H"OsBO`S/E=?Om(œ®H">EMXO:OZl>ABOZ;@ZONSVL+K=ÇF"L+E@ZO†D U"QQO4D)G2D GH< Gs=^KD)G{jGsME>XG GMEO F6KME9=^KLFH">ED=ÈE=?OIJ>XG„>ED:GL+U"OvGH< G:SVKLCD K=^O F"L+KQL+E=?>X4EK;iDG+O]D GO4BR>E;xG+H">EDD GUB"9R@Z< ; =o< dONE@ZLKatP6OZ;@2H=?EDFE;oKL2BOZLšG+KpEBp>X;@ZU"L+L>E;"Q†XQ;">¤6@Z< ;G(F6OZLSVKL+=?EOZ;G+O]BcB"O]D>XQ; D G)9MXOm

2. BACKGROUND 2.1 Monomorphism vs. Polymorphism

8{9;E@YB">EDFEDoOZ‚FiO];D >ElOwP6O]@]< UDO[GHOwG+X=?O}G)9F6O}K S?GHO~LOZa @`O]>XlOZL4I5uNH">A@2HqQOZ;OZL2< MEMX9c@]< ;";K GCPiOfBO`G+OZL+=^>E;"O4BqU";G>EM E;GKCG)u K P"L+KXO4DZÖ

¥{MG+OZL+;XlON>X=?F"MEOZ=?OZ;G2EK;?G+O]@2H";>EzU"O4D< L+ONEMEEF"MXO†G+< L+QOZG+DuN>XGH"KUG{UD a >E;"QrOZ‚FiO];D >ElOcP"L+E;D)G+LUi@WG>EK;iDZmʃ{;SVKLGU;E;"Q GH"O7F6OZLSVKL+=o< ;@ZO-K SGH"O4D O@ZK=?F6O`G>XG>ElO-G+O]@2Ha ;">AzU"O]Dp>EDvHE;B"D(KSԏŒ+Õ Ë ™ëަÌ+Ô“:Ë 6Ë ìÌ ‘ – ‘ ¢¦D Ui@2H?EL G+U< ME>X4XK;ÆK S^F"L+Kl$ADoG+O]@2H";>EzU"OwHE;">E;"QfKS(G+XF"F>X;"Q®E]< a G+>XK;fKSTG+H"OC>X;MX>E;"O]B[@ZKB"OCP9f@`MAA@ZX;">E;"QkA@2HCF6OZL+=^>XG+DJSVU"LGH"O]L5KF"G>E=^>E]< G>EK;CKS@]< MEMEDJGH< G A@->X;CK;"ME9\E;">X;QwFiKMX9=?KLa F"H>E@-K;"O]D7¢¦@ZXGHC=?KL+O-GHE=^>EZO^G+H"O]DO F6KME9=^KLFH">E@{@Z< MEMADZIO]DF6O]@`>A< MEME9vuNH"O];RG+H"O{;U"=vPiO]L KSF6KD+D>XP"MEORG)9F6O]Dp>EDvlO]L9MXKuCmY¯KLpOZ‚"< =?F"MEOI(< @ZK=?F">EMXO]L-@]< ;vLO]F"MEEK;A@x@ZE;D GO]XlOsMAADRO4XO]LoGHi< ;®F"L+O]B>A@WG+>XK;®K S >E;B>ELO4@WG{PL+X;i< ;G ¢/=^KD)Go@`K=?=^K;i£^@ZELO4@WG+>XK;|@ZX;"ME>E;"O]B0I MEO]X;QrG+KžD>E=^>EMA< LwKF"G>E=^>E]< G>EK;¼KF"F6KLGU";>G+>XO4D

Suggest Documents