Cultural advice

The Australian National University acknowledges, celebrates and pays our respects to the Ngunnawal and Ngambri people of the Canberra region and to all First Nations Australians on whose traditional lands we meet and work, and whose cultures are among the oldest continuing cultures in human history.

Aboriginal and Torres Strait Islander peoples are advised that ANU Library collections may include images, names, voices, and other representations of deceased persons.

Material in the collection may contain terms, language or views that reflect the period in which the item was created and may be considered inappropriate today.

Hop, Skip, & Jump: Practical On-Stack Replacement for a Cross-Platform Language-Neutral VM

dc.contributor.authorWang, Kunshan
dc.contributor.authorBlackburn, Stephen
dc.contributor.authorHosking, Tony
dc.contributor.authorNorrish, Michael
dc.coverage.spatialWilliamsburg, VA, USA
dc.date.accessioned2023-03-14T01:02:34Z
dc.date.created25 March 2018 through 25 March 2018
dc.date.issued2018
dc.date.updated2022-01-09T07:17:15Z
dc.description.abstractOn-stack replacement (OSR) is a performance-critical technology for many languages, especially dynamic languages. Conventional wisdom, apparent in JavaScript engines such as V8 and SpiderMonkey, is that OSR must be implemented in a low-level (i.e., in assembly) and language-specific way. This paper presents an OSR abstraction based on Swapstack, materialized as the API for a low-level virtual machine, and shows how the abstraction of resumption protocols facilitates an elegant implementation of this API on real hardware. Using an experimental JavaScript implementation, we demonstrate that this API enables the language implementation to perform OSR without the need to deal with machine-level details. We also show that the API itself is implementable on concrete hardware. This work helps crystallize OSR abstractions and, by providing a reusable implementation, brings OSR within reach for more language implementers.en_AU
dc.description.sponsorshipThis research was supported (partially or fully) by the Australian Government through the Australian Research Council’s Discovery Projects funding scheme (project DP140103878).en_AU
dc.format.mimetypeapplication/pdfen_AU
dc.identifier.isbn978-1-4503-5579-7en_AU
dc.identifier.urihttp://hdl.handle.net/1885/287027
dc.language.isoen_AUen_AU
dc.publisherACMen_AU
dc.relationhttp://purl.org/au-research/grants/arc/DP140103878en_AU
dc.relation.ispartofseries14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, VEE 2018en_AU
dc.rights© 2018 Copyright held by the owner/author(s)en_AU
dc.sourceVEE 2018 - Proceedings of the 2018 International Conference on Virtual Execution Environmentsen_AU
dc.subjecton-stack replacementen_AU
dc.subjectSwapstacken_AU
dc.subjectlanguage implementationen_AU
dc.subjectfeedback-directed optimizationen_AU
dc.titleHop, Skip, & Jump: Practical On-Stack Replacement for a Cross-Platform Language-Neutral VMen_AU
dc.typeConference paperen_AU
local.bibliographicCitation.lastpage16en_AU
local.bibliographicCitation.startpage1en_AU
local.contributor.affiliationWang, Kunshan, College of Engineering and Computer Science, ANUen_AU
local.contributor.affiliationBlackburn, Steve, College of Engineering and Computer Science, ANUen_AU
local.contributor.affiliationHosking, Tony, College of Engineering and Computer Science, ANUen_AU
local.contributor.affiliationNorrish, Michael, Data61en_AU
local.contributor.authoruidWang, Kunshan, u5211824en_AU
local.contributor.authoruidBlackburn, Steve, u3789498en_AU
local.contributor.authoruidHosking, Tony, u1817699en_AU
local.description.embargo2099-12-31
local.description.notesImported from ARIESen_AU
local.description.refereedYes
local.identifier.absfor461204 - Programming languagesen_AU
local.identifier.absfor460602 - Concurrent/parallel systems and technologiesen_AU
local.identifier.absfor460610 - Operating systemsen_AU
local.identifier.ariespublicationa383154xPUB10241en_AU
local.identifier.doi10.1145/3186411.3186412en_AU
local.identifier.scopusID2-s2.0-85049590423
local.publisher.urlhttps://dl.acm.org/en_AU
local.type.statusPublished Versionen_AU

Downloads

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
3186411.3186412.pdf
Size:
586.33 KB
Format:
Adobe Portable Document Format
Description: