Trustworthy Systems

vNUMA: Virtual shared-memory multiprocessors

Authors

Matthew Chapman

School of Computer Science and Engineering
UNSW
Sydney
Australia

Abstract

Shared memory systems, such as SMP and ccNUMA topologies, simplify programming and administration. On the other hand, systems without hardware support for shared memory, such as clusters of commodity workstations, are commonly used due to cost and flexibility considerations.

In this thesis, virtualisation is proposed as a technique that can bridge the gap between these architectures. The resulting system, vNUMA, is a hypervisor with a unique feature: it provides the illusion of shared memory across separate nodes on a fast network. This allows a cluster of workstations to be transformed into a single shared memory multiprocessor, supporting existing operating systems and applications. Such an approach could also have applications for emerging highly-parallel architectures, allowing a shared memory programming model to be retained while reducing hardware complexity.

To build such a system, it is necessary to meld both a high-performance hypervisor and a high-performance distributed shared memory (DSM) system. This thesis addresses the challenges inherent in both of these tasks. First, designing an efficient hypervisor layer is considered; since vNUMA is implemented on the Itanium processor architecture, this is with particular reference to Itanium processor virtualisation. Then, novel DSM protocols are developed that allow SMP consistency models to be reproduced while providing better performance than a simple atomically-consistent DSM system. Finally, the system is evaluated, proving that it can provide good performance and compelling advantages for a variety of applications.

BibTeX Entry

  @phdthesis{Chapman:phd,
    address          = {Sydney, Australia},
    author           = {Matthew Chapman},
    month            = mar,
    paperurl         = {https://trustworthy.systems/publications/papers/Chapman%3Aphd.pdf},
    school           = {UNSW},
    title            = {{vNUMA}: Virtual Shared-Memory Multiprocessors},
    year             = {2009}
  }

Download