KVM虚拟机使用GPU的最佳实践

系统虚拟化是指一台物理计算机系统虚拟化为一台或多台虚拟计算机系统。每个虚拟机都拥有由自己的虚拟硬件提供的一个独立的虚拟机执行环境。通过虚拟化层VMM(Virtual Machine Manager)的模拟,虚拟机中的操作系统认为自己仍然独占一个系统在运行。

1974年,Popek和Goldberg定义了虚拟机的三层含义:同质、高效和资源受控——这也是一个虚拟机所拥有的三个典型特征。所谓同质,是指虚拟机运行环境和物理机的环境在本质上是相同的,但是表现上能够有一定的差异。所谓高效,是指虚拟机中运行的软件需要有接近物理机上直接运行的性能。所谓资源受控,是指VMM需要对系统资源有完全的控制能力和管理权限,包括资源的分配、监控和回收。

Intel的VT(Virtualization Technology)技术和AMD的SVM(Secure Virtual Machine)技术从根本上解决了x86架构体系中的虚拟化漏洞缺陷,使操作系统可以不做任何修改就-运行在虚拟机中。与此同时,PCI标准组织也在积极制定在PCI设备级对虚拟化支持的单根PCI桥IOV(SR-IOV)和多根PCI桥IOV(MR-IOV)。

从20世纪90年代至今,虚拟化软件已经取得了长足的发展,呈现出一派百花齐放的繁荣景象。除了VMware、Xen之外,又涌现出来KVM、VirtualBox和Hyper-V等。虚拟化种类繁多,KVM成为了目前比较主流的应用方案之一,KVM实际是linux内核提供的虚拟化架构,可将内核直接充当hypervisor来使用。在QEMU-KVM中,KVM运行在内核空间,QEMU运行在用户空间,实际模拟创建、管理各种虚拟硬件,QEMU将KVM整合了进来,通过/ioctl 调用 /dev/kvm,从

你可能感兴趣的:(ai,kvm,gpu)