Full GPU Virtualization on Kernel-Based Virtual Machine

碩士 === 國立清華大學 === 資訊工程學系 === 104 === Graphics processing Units (GPUs), which originally designed for the graphics calculating, have been widely adopted to general purpose computing in many domains owing to their massive computational power. In the era of cloud computing, GPU virtualization becomes a...

Full description

Bibliographic Details
Main Authors: Hsu, Hong-Cyuan, 許宏銓
Other Authors: Lee, Che-Rung
Format: Others
Language:en_US
Published: 2016
Online Access:http://ndltd.ncl.edu.tw/handle/84122800478705061481
Description
Summary:碩士 === 國立清華大學 === 資訊工程學系 === 104 === Graphics processing Units (GPUs), which originally designed for the graphics calculating, have been widely adopted to general purpose computing in many domains owing to their massive computational power. In the era of cloud computing, GPU virtualization becomes an important technique for the better management of GPUs in data centers. However, most of current solutions are not full virtualization. They either need to modify the guest drivers or libraries, or restrict the hardware sharing capability. GPUvm is a full GPU virtualization solution for Nvidia GPUs, but it can only be executed on Xen hypervisors. In this thesis, we present a _rst full GPU virtualization solution on KVM (Kernel-based Virtual Machine), called GPUvmK. Our work is not merely a direct porting of GPUvm to KVM, since Xen and KVM have fundamental di_erences in their system architectures. Three major changes of GPUvmK are aggregator, QEMU device model, and memory management. Experiments show that GPUvmK can achieve 82% of native GPU performance. Comparing to GPUvm, GPUvmK has a larger memory initialization overhead but better execution performance.