Show simple item record

dc.contributor.authorGREGG, DAVID
dc.contributor.authorMCCANDLESS, JASON MARSHALL
dc.date.accessioned2012-06-27T14:09:21Z
dc.date.available2012-06-27T14:09:21Z
dc.date.createdAugust 24-26, 2011en
dc.date.issued2011
dc.date.submitted2011en
dc.identifier.citationJ. McCandless and D. Gregg, Optimizing interpreters by tuning opcode orderings on virtual machines for modern architectures, Conference on the Principles and Practice of Programming in Java, PPPJ 11, Kongens Lyngby, Denmark, August 24-26, 2011, ACM, 2011, 161 - 170en
dc.identifier.otherY
dc.descriptionPUBLISHEDen
dc.description.abstractVirtual machines (VMs) are commonly used to implement programming languages such as Java, Python and Lua. VMs are typically implemented using an interpreter, a JIT compiler, or some combination of the two. A long-standing question in the design of VM interpreters is whether it is worthwhile to reorder the cases in the main interpreter loop to improve code locality. We investigate this phenomenon using an iterative, feedback-directed approach. We show that the ordering of the cases in the interpreter loop has a signi?cant impact on performance on recent processors. Using hardware performance counters, we demonstrate that the performance improvement is primarily the result of indirect branch prediction, not instruction cache locality. We propose a number of strategies to achieve better orderings, and evaluate these strategies in the Python and Lua virtual machine interpreters. We show speedups of up to 40%.en
dc.format.extent161en
dc.format.extent170en
dc.language.isoenen
dc.publisherACMen
dc.rightsYen
dc.subjectComputer sciencesen
dc.subjectProgrammingen
dc.subjectVirtual machinesen
dc.subjectLuaen
dc.subjectPythonen
dc.titleOptimizing interpreters by tuning opcode orderings on virtual machines for modern architecturesen
dc.title.alternativeConference on the Principles and Practice of Programming in Java, PPPJ 11en
dc.typeConference Paperen
dc.type.supercollectionscholarly_publicationsen
dc.type.supercollectionrefereed_publicationsen
dc.identifier.peoplefinderurlhttp://people.tcd.ie/mccandjm
dc.identifier.peoplefinderurlhttp://people.tcd.ie/dgregg
dc.identifier.rssinternalid75392
dc.contributor.sponsorIrish Research Council for Science Engineering and Technologyen
dc.identifier.urihttp://hdl.handle.net/2262/64047


Files in this item

Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record