虚拟机 VGPU 功能模块可分为底层虚拟化和上层虚拟机两部分:
a.在虚拟化层(超融合架构)内置 NVIDIA 提供的 vGPU 管理组件,负责将底层物理显卡的 GPU 核心切分成多个虚拟 GPU 硬件,同时 VMP 管理组件,做上层的逻辑判断,通过自动调用 NVIDIA 的 API 完成对应显卡调用、异常处理等操作,简化 NVIDIA 原本提供的繁杂操作;
b.虚拟机安装对应的显卡驱动保证虚拟显卡工作正常。
【知识补充】
显卡核心、显卡切分概念解释:
显卡核心:即 GPU,显卡中负责承载图形计算的部分,普通显卡一般只有一个 GPU 核心,高端显卡在一块显卡上有多个显卡核心,每个核心各自有独立显存,如 M10 显卡就有 4 个显卡核心,如下图显卡切分:
vGPU 的实现方式,将单颗核心切分成多个 vGPU 提供给不同虚拟机使用,但这里切分的实际是显卡核心的显存,显卡核心的计算能力是共享的。由于 NVIDIA 目前 vGPU 技术的限制,现阶段只能实现对显存的等值切分,因此一个显卡核心只能虚拟出一种型号的 vGPU。当显卡核心上最后一台虚拟机关机时,会清理掉该核心上切分过的显卡类型,即重新初始化该显卡核心,以供下次使用。