透過您的圖書館登入
IP:3.138.137.127
  • 學位論文

KVM虛擬機之InfiniBand虛擬化

InfiniBand Virtualization for Kernel-Based Virtual Machine

指導教授 : 鍾葉青

摘要


由於雲端運算可提供隨需的服務且有效降低IT設備的成本,近幾年來雲端運算愈來愈受歡迎。虛擬化技術是雲端運算重要的技術之一,它有CPU虛擬化、記憶體虛擬化、I/O虛擬化、儲存虛擬化等等各種虛擬化。虛擬化的核心概念主要是提供一個硬體資源的抽象層,所以它需要額外增加一虛擬層在硬體設備之上,正因為如此,經過虛擬化的硬體效能會降低。在各種虛擬化中以I/O虛擬化效能下降的情況最嚴重,經常在雲端運算成為效能的瓶頸。 InfiniBand 是一種擁有高頻寬、低延遲的高速網路,它廣泛用於高效能運算的領域。在此論文,我們提出一套針對KVM虛擬機器管理者的InfiniBand虛擬化系統─Virt-IB。Virt-IB主要由VM IB library和以virtio為基礎架構的Virt-IB驅動程式所構成。本論文研究兩種做法。第一種做法採用間接執行API的方法,VM IB library提供API介面並傳遞API所需的參數給Virt-IB驅動程式,然後由其在實體機器上執行API後,傳遞回傳值。透過這種方式,基礎Virt-IB的效能只達到實體InfiniBand設備的百分之三十。第二種做法是直接在虛擬機上執行API,然後再間接使用InfiniBand設備進行傳輸。VM IB library不僅提供API介面,同時也具備使用者InfiniBand驅動程式的作用,然後Virt-IB驅動程式提供溝通管道讓VM IB library間接將指令寫入InfiniBand設備。第二種做法的Virt-IB達到實體InfiniBand百分之五十的效能,同時也達到改善I/O虛擬化效能的目的。

並列摘要


With the ability to provide on-demand service and to reduce the IT cost, cloud computing becomes more and more popular recently. Virtualization is one of the important technologies in cloud computing, whose main idea is to provide abstractions of the physical resources. However, such abstraction can cause performance degradation, especially for /IO virtualization, which is usually the performance bottleneck in cloud computing. InfiniBand is a network system that provides very low latency (less than 5us) and very high bandwidth (multiple Gbps). Due to its excellent performance, InfiniBand is commonly used in high performance computing (HPC) area. In this thesis, we propose Virt-IB for InfiniBand virtualization on Kernel Virtual Machine (KVM). The main components of Virt-IB are VM IB library and Virt-IB driver. Two different Virt-IBs designs were studied and implemented in this thesis. The first design is to execute InfiniBand API indirectly. VM IB library provides API interface and passes all the necessary parameters to Virt-IB driver. Then, Virt-IB driver performs the operation of API. The second design processes the API directly in guest VM and communicates with InfiniBand device indirectly to perform the real operations. VM IB library provides API interface and user-level InfiniBand driver. Virt-IB driver provides a channel for VM IB library to write commands into InfiniBand device indirectly. Evaluation results show that the first method only achieves about 30% performance of native InfiniBand. And the second method can achieve 50% performance of the native InfiniBand. At the same time, we improve the performance of I/O virtualization.

並列關鍵字

kvm virtio InfiniBand virtualization

參考文獻


[1] "Direct memory access". en.wikipedia.org/wiki/Direct_memory_access.
[15] Peter Mell, T. G., "The NIST Definition of Cloud Computing", National Institute of Standards and Technology: NIST Special Publication, September 2011.
[16] Qumranet Inc., "KVM: Kernel-based Virtualization Driver", 2006.
[19] W. Huang, J. L., B. Abali and D. K. Panda, "A Case for High Performance Computing with Virtual Machines", in Int'l Conference on Supercomputing (ICS), pp. 125-134. June 2006.
[2] "Iperf". http://en.wikipedia.org/wiki/Iperf.

延伸閱讀