标题: 一个为异质系统架构并基于KVM的系统虚拟机器
A KVM-based Hypervisor for Heterogeneous System Architecture
作者: 黄昱儒
Huang, Yu-Ju
徐慰中
Hsu, Wei-Chung
资讯科学与工程研究所
关键字: 虚拟化技术;系统虚拟化;图形处理器虚拟化;异质运算;异质系统架构;Virtualization;GPU Virtualization;Kernel-based Virtual Machine;Heterogeneous system architecture;HSA
公开日期: 2015
摘要: 为解决旧有异质运算架构所存在的效能消耗及程式撰写不便性,异质系统架构基金会提出了异质系统架构。该架构将处理器与其他运算单元放置于同一系统汇流排,使运算单元处于相同位址空间,由此省略运算单元间资料传输,程式开发者也可更专注于开发运算演算法而不用处理运算单元间沟通,此设计解决了效能消耗及程式撰写不便的问题。异质系统架构为异质运算开创了崭新的发展空间,并提供多种特性使异质运算更强大、更方便、以及更省电。
本论文探讨与实作一可运行于异质系统架构之系统虚拟机,因异质系统架构为一崭新的架构,旧有的系统虚拟机器无法直接运行及虚拟多项异质系统架构所定义的特性。本论文实作基于Linux KVM,并提出多项设计及修改以达到异质系统架构的系统虚拟化。并基于此实作,在异质系统架构上之GPU可共享于多的虚拟作业系统及原生作业系统,在实验平台AMD Kaveri机器上,多个虚拟作业系统及原生作业系统均可同时分配工作并于GPU端执行。
Heterogeneous System Architecture (HSA) [1] is defined and developed by HSA foundation aiming at reducing programmability barrier and improving computation efficiency for heterogeneous computing. HSA tries to integrate CPU and other computing devices on the same bus and enables them to share the same virtual memory address space. Since the address space is shared, programmers do not need to take care of explicit data copying between devices, as was required in discrete GPUs in the past, and can focus more on developing algorithms. The communication overhead between CPU and devices is also reduced by eliminating such explicit data copy. HSA offers new opportunities for heterogeneous computing and introduces various features in the architecture to make heterogeneous computing more powerful, more convenient, and more power efficient.
This thesis introduces HSA virtualization. Since HSA is a new architecture, which tightly integrates CPU with GPU, legacy hypervisors cannot work directly on HSA-compliant systems. This work investigates on the issues involved and implements a system virtual machine based on Linux KVM (kernel-based virtual machine) [2]. The newly created hypervisor enables major features defined by HSA inside the guest operating systems. GPU in an HSA machine can be shared between multiple guest OSes and the host OS under this implementation. We have shown that on the HSA-compliant computing system AMD Kaveri, various processes in multiple guest operating systems and host operating system can dispatch jobs to the shared GPU for execution under our new and HSA-ready hypervisor.
URI: http://140.113.39.130/cdrfb3/record/nctu/#GT070256070
http://hdl.handle.net/11536/127230
显示于类别:Thesis