JINDY: A java library to support invokedynamic

作者: Patricia Conde , Francisco Ortin

DOI: 10.2298/CSIS130129018C

关键词:

摘要: Java 7 has included the new invokedynamic opcode in virtual machine. This instruction allows user to define method linkage at runtime. Once link is established, machine performs its common optimizations, providing better runtime performance than reflection. However, this feature not been offered abstraction level of Java programming language. Since functionality not provided as a library, existing languages platform can only use it assembly level. For reason, we have developed JINDY library that offers any language platform. JINDY supports three modes use, establishing trade-off between and flexibility. A memory consumption evaluation presented. We analyze efficiency compared reflection, MethodHandle class Dynalink library. The memory costs invokedynamic are also measured.

参考文章(12)
David J. Lilja, Measuring Computer Performance Cambridge University Press. ,(2000) , 10.1017/CBO9780511612398
Frédéric Le Mouël, Julien Ponge, JooFlux: Hijacking Java 7 InvokeDynamic To Support Live Code Modifications arXiv: Operating Systems. ,(2012)
FRANCISCO ORTIN, LUIS VINUESA, JOSE M. FELIX, THE DSAW ASPECT-ORIENTED SOFTWARE DEVELOPMENT PLATFORM International Journal of Software Engineering and Knowledge Engineering. ,vol. 21, pp. 891- 929 ,(2011) , 10.1142/S0218194011005554
Francisco Ortin, Jose Manuel Redondo, J. Baltasar García Perez-Schofield, Efficient virtual machine support of runtime structural reflection Science of Computer Programming. ,vol. 74, pp. 836- 860 ,(2009) , 10.1016/J.SCICO.2009.04.001
Eric Bodden, InvokeDynamic support in Soot state of the art in java program analysis. pp. 51- 55 ,(2012) , 10.1145/2259051.2259059
Chanwit Kaewkasi, Towards performance measurements for the Java Virtual Machine's invokedynamic Virtual Machines and Intermediate Languages. pp. 3- ,(2010) , 10.1145/1941054.1941057
John R. Rose, Bytecodes meet combinators: invokedynamic on the JVM Proceedings of the Third Workshop on Virtual Machines and Intermediate Languages. pp. 2- ,(2009) , 10.1145/1711506.1711508
Jon Skeet, Guillaume Laforge, Paul King, Erik Pragt, Cdric Champeau, Hamlet D'Arcy, Dierk Knig, Groovy in Action ,(2007)
Francisco Ortin, Juan Manuel Cueva, Dynamic adaptation of application aspects Journal of Systems and Software. ,vol. 71, pp. 229- 243 ,(2004) , 10.1016/S0164-1212(02)00157-7
Craig Chambers, Object-Oriented Multi-Methods in Cecil european conference on object oriented programming. pp. 33- 56 ,(1992) , 10.1007/BFB0053029