A Performance Survey on Stack-based and Register-based Virtual Machines
Ruijie Fang, Siqi Liu

TL;DR
This paper surveys the performance differences between stack-based and register-based virtual machines, introducing new measurement methods and custom virtual machines, revealing that register machines are generally faster but stack machines excel in fetch time.
Contribution
It provides a comprehensive performance comparison using new measurement approaches and introduces two custom virtual machines for benchmarking.
Findings
Register-based virtual machines are approximately 20% faster in execution.
Stack-based virtual machines have faster instruction fetch times.
New benchmarking methods provide detailed performance insights.
Abstract
Virtual machines have been widely adapted for high-level programming language implementations and for providing a degree of platform neutrality. As the overall use and adaptation of virtual machines grow, the overall performance of virtual machines has become a widely-discussed topic. In this paper, we present a survey on the performance differences of the two most widely adapted types of virtual machines - the stack-based virtual machine and the register-based virtual machine - using various benchmark programs. Additionally, we adopted a new approach of measuring performance by measuring the overall dispatch time, amount of dispatches, fetch time, and execution time while running benchmarks on custom-implemented, lightweight virtual machines. Finally, we present two lightweight, custom-designed, Turing-equivalent virtual machines that are specifically designed in benchmarking virtual…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCloud Computing and Resource Management · Parallel Computing and Optimization Techniques · Distributed and Parallel Computing Systems
