Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Virtual machine aware communication libraries for high performance computing
Huang W., Koop M., Gao Q., Panda D.  Supercomputing (Proceedings of the 2007 ACM/IEEE Conference on Supercomputing, Reno, Nevada, Nov 10-16, 2007)1-12.2007.Type:Proceedings
Date Reviewed: Jun 20 2008

Virtual machines (VMs) strike back! VM technology is a way of sharing a computer between multiple instances of possibly diverse operating systems (OSs) running at the same time. This technology has been around for many years, and confined to mainframes for most of its lifetime. Recently, virtualization based on x86 processor architecture has been made available for computers, servers, and personal computers (PCs). As the products offered by VMware and its competitors have matured, and computers have become faster and have more random access memory (RAM), virtual machines have become the most exciting software technology of the last few years. Why? Because it’s a natural solution to a number of common challenges that are ever present in data centers: application deployment and migration, and server consolidation and load management. Best of all, it does everything behind the scenes and requires no changes to the applications.

Enter high-performance computing (HPC): once the domain of proprietary, sometimes even one-off platforms and systems, it is now dominated by clusters. There were more than 400 such systems on the November 2007 release of the Top500 supercomputing list. Initially popular for their low cost, they grew larger and faster over the years. Nowadays, large-scale clusters are among the fastest supercomputers in the world. This creates new challenges in system management and administration: dealing with failing nodes, incompatibilities between nodes, and incompatibilities between system libraries required by different applications. Many of these challenges can be addressed by running applications inside VMs, but this comes at the price of additional overhead and performance penalty. HPC users are a very performance-sensitive bunch, and that’s where this paper comes into the picture.

Huang et al. focus on communication bottlenecks between multiple instances of VMs running on the same computer node. Their inter-VM communication library (IVC) is implemented using shared-memory mapping mechanisms present in Xen, a popular virtualization solution available in a number of Linux distributions. IVC uses this feature to share communication buffers between VM instances running on the same node, and then implements the message exchange and flow-control protocols in the user space only. This ensures the overhead of inter-VM communication is minimal. The proof is in the benchmark results. There are point-to-point and group communication microbenchmarks, as well as a number of application-level benchmarks with various communication patterns. All the performance benchmarks are message passing interface (MPI) programs. This is possible because the authors have ported the popular MVAPICH2 library to IVC. Their MVAPICH2-IVC implementation also supports internode communication over InfiniBand, and is able to switch between IVC and the network at runtime. This makes it possible to support another great feature of IVC: transparent migration to a remote node, while the application is running.

So, what is there not to like about this paper? After reading, I still had a few unanswered questions about the VMM-bypass input/output (I/O) used for internode communication, including how it supports the migration between nodes. As it turns out, these questions have already been addressed in other papers cited in the extensive references. That is to say, the bibliography is as good as the rest of this excellent paper.

Reviewer:  Maciej Golebiewski Review #: CR135751 (0905-0473)
Bookmark and Share
  Reviewer Selected
 
 
Message Sending (D.4.4 ... )
 
 
High-Speed (C.2.5 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Message Sending": Date
IMS/VS data communications programming using message format service
Vuong Z., TAB Books, Blue Ridge Summit, PA, 1990. Type: Book (9789780830633814)
Apr 1 1991
Messaging and queueing using the MQI
Blakeley B., Harris H., Lewis R., McGraw-Hill, Inc., New York, NY, 1995. Type: Book (9780070057302)
Jul 1 1996
Dynamic class-based queue management for scalable media servers
Striegel A., Manimaran G. Journal of Systems and Software 66(2): 119-128, 2003. Type: Article
Dec 1 2003
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy