CSR: Medium: Multicore Virtual Machines for High-Speed Networking
Washington University, Saint Louis MO
Investigators
Abstract
A mismatch exists in modern computer systems between the computational resources provided by emerging multicore chip-multiprocessors (CMPs) and the ability of virtual machines (VMs), such as the Java VM or Microsoft Common Language Runtime, to exploit those resources. CMP architectures will dominate the next several processor generations; meanwhile, for reasons of security and portability, software will target VMs rather than native processors. However, since modern VMs are ill-equipped to directly exploit the coarse-grained parallelism provided by CMPs, they will not experience significant performance increases with future generations of processors. This work aims to pioneer an approach for accelerating the execution of VMs on CMPs by creating pipelined VMs which are implemented as a series of balanced programs, or pipeline stages, each executing on a distinct processor core. A pipelined VM with N balanced stages can provide an N-fold increase in performance relative to an unpipelined VM. Pipelined VMs allow programmers to benefit from multicore parallelism while writing sequential single-threaded programs. This research agenda closely integrates theoretical work on the benefits and limits of VM pipelining, with both 1) the design and implementation of pipelines on real systems, and 2) the exploration of novel computer architectures and mechanisms. For concreteness, the research plan focuses on pipelined VMs that target high-speed networking, an area in which aggressive CMPs are already deployed in commercial and academic platforms and where publically-accessible testbeds will allow others to develop and deploy pipelined VMs of their own design.
View original record on NSF Award Search →