Register-Based and Stack-Based Virtual Machines: Which Perform Better in JIT Compilation Scenarios?

dc.contributor.authorŠimek, Bohuslav
dc.contributor.authorFiala, Dalibor
dc.contributor.authorDostal, Martin
dc.date.accessioned2026-02-27T19:05:40Z
dc.date.available2026-02-27T19:05:40Z
dc.date.issued2025
dc.date.updated2026-02-27T19:05:40Z
dc.description.abstractBackground: Just-In-Time (JIT) compilation plays a critical role in optimizing the performance of modern virtual machines (VMs). While the architecture of VMs – register-based or stack-based – has long been a subject of debate, empirical analysis focusing on JIT compilation performance is relatively sparse. Objective: In this study, we aim to answer the question: “Register-based and stack-based virtual machines: which perform better in JIT compilation scenarios?”. Methods: We explore this through a comprehensive set of benchmarks measuring execution speed. To achieve this, we developed identical test cases in languages that support both types of VM architectures and ran these tests under controlled conditions. The performance metrics were captured and analyzed for JIT compilation, including initial interpretation, bytecode translation, and optimized code execution. Results: Our findings suggest that register-based VMs generally outperform stack-based VMs in terms of execution speed. Moreover, the performance gap between the two architectures in mixed execution mode, which essentially copies characteristics of the underlying virtual machine, suggests that making the right choice of VM architecture is still important. Conclusion: This study provides developers, researchers, and system architects with actionable insights into the performance trade-offs associated with each VM architecture in JIT-compiled environments. The findings can guide the design decisions in the development of new virtual machines and JIT compilation strategies.en
dc.description.abstractKontext: Kompilace typu "Just-in-Time" (JIT) hraje kritickou úlohu v optimalizacích výkonnosti moderních virtuálních strojů (VM). Zatímco architektura VM - založených na registrech a založených na zásobníku - byla dlouho předmětem debaty, empirická analýza zaměřená na výkonnost JIT kompilace je relativně vzácná. Účel: V této studii si klademe za cíl nalézt odpověď na tuto otázku: "Virtuální stroje založené na registrech a na zásobníku: které mají lepší výkonnost v kompilacích typu JIT?" Metody: Prozkoumáváme tuto oblast prostřednictvím sady benchmarků měřících dobu provádění úloh. Abychom toho dosáhli, vyvinuli jsme identické testovací případy v jazycích, které podporují oba typy architektur VM a provedli jsme tyto testy v kontrolovaných podmínkách. Výkonnostní indikátory jsme zaznamenali a analyzovali pro kompilaci JIT, včetně původního překladu (interpretace), překladu bytekódu a optimalizovaného provedení kódu. Výsledky: Naše výstupy naznačují, že VM založené na registrech obecně překonávají VM založené na zásobníku co do rychlosti provedení. Navíc rozdíl mezi výkonnostmi obou architektur v promíchaném prováděcím módu, který převážně kopíruje vlastnosti používaného virtuálního stroje, ukazuje, že správná volba architektury VM je stále důležitá. Závěr: Tato studie poskytuje vývojářům, výzkumníkům a systémovým architektům potřebný vhled do kompromisů v efektivitě spojených s každou architekturou VM v prostředích JIT kompilátorů. Výsledky mohou pomoci udělat lepší rozhodnutí v návrhu vývoje nových virtuálních strojů a JIT kompilačních strategií.cz
dc.format15
dc.identifier.document-number001556217600001
dc.identifier.doi10.1002/spe.70014
dc.identifier.issn0038-0644
dc.identifier.obd43947327
dc.identifier.orcidŠimek, Bohuslav 0009-0002-8812-8107
dc.identifier.orcidFiala, Dalibor 0000-0002-2528-771X
dc.identifier.orcidDostal, Martin 0000-0001-6776-8629
dc.identifier.urihttp://hdl.handle.net/11025/67129
dc.language.isoen
dc.relation.ispartofseriesSoftware Practice and Experience
dc.rights.accessA
dc.subjectjust-in-time compilationen
dc.subjectregister-based VMsen
dc.subjectstack-based VMsen
dc.subjectvirtual machinesen
dc.subjectkompilace just-in-timecz
dc.subjectVM založené na registrechcz
dc.subjectVM založené na zásobníkucz
dc.subjectvirtuální strojecz
dc.titleRegister-Based and Stack-Based Virtual Machines: Which Perform Better in JIT Compilation Scenarios?en
dc.titleVirtuální stroje založené na registrech a na zásobníku: které mají lepší výkonnost v kompilacích typu JIT?cz
dc.typeČlánek v databázi WoS (Jimp)
dc.typeČLÁNEK
dc.type.statusPublished Version
local.files.count1*
local.files.size1411938*
local.has.filesyes*
local.identifier.eid2-s2.0-105014085865

Files

Original bundle
Showing 1 - 1 out of 1 results
No Thumbnail Available
Name:
paper_J_Software2025.pdf
Size:
1.35 MB
Format:
Adobe Portable Document Format
License bundle
Showing 1 - 1 out of 1 results
No Thumbnail Available
Name:
license.txt
Size:
1.71 KB
Format:
Item-specific license agreed upon to submission
Description:

Collections