Novell Home

AlacrityVM/Background

From Developer Community

Back to the main page

Background

Virtual machine environments have several distinct disadvantages over physical machines:

  1. IO instructions in real hardware are very cheap, yet their counterpart in the virtual world are fairly expensive.
  2. Real hardware has natural concurrency/acceleration built into the various chips/devices, while hypervisors have to emulate that behavior in software.

Any solution which aims to achieve parity with its physical counterpart must be designed with these two limitations in mind. We do this by:

  • Eliminating as many IO instructions as we possibly can
    • E.g. use lockless shared memory to communicate while avoiding hypercalls/interrupts.
  • Optimizing the paths for the cases where IOs can't be eliminated
    • E.g. shorten the stack depth by running device models in-kernel
  • Emulate as much "silicon concurrency" as possible
    • E.g. utilizing the ever increasing (and often wasted) SMP resources available in the host

AlacrityVM achieves these goals by utilizing a newly emerging IO fabric (called Virtual-bus) developed specifically to solve these types of bottlenecks.

Back to the main page

Novell® Making IT Work As One

© 2010 Novell