Labs简介5G的应用领域越来越清晰,GPU的应用也越来越广泛。中国移动充分展示了其在5G+AI融合创新应用方面的探索和贡献。未来,基于领先的GPU虚拟化和一致的云能力,中国移动将继续推动产业融合创新,加速5G+AI的规模扩张。作者:潘伟辰单位:中国移动智能家庭运营中心咳咳,新课要开课了!看看这次我们聊的是什么?云桌面?播放大型3D和高清视频卡的那种?GPU虚拟化?一步到位拥有实体显卡不是很好吗?别着急,存在就是合理的~让我们花5分钟来了解一下。在此之后您可能还想尝试一下。Part01并行计算天才——GPUGPU(GraphicProcessingUnit)即计算机图形处理器,拥有数千个计算核心,能够并行高效地处理工作负载,是硬件显卡的“心脏”。GPU和CPU之间的区别在于,CPU由几个针对顺序串行处理优化的内核组成,而GPU的单个内核由数千个更小、更高效的内核(专为同步多任务处理而设计)组成。与CPU相比,由CPU组成的大规模并行计算架构更适合具有大量重复数据集操作和频繁访问内存特点的应用场景,如3D应用、视频图像渲染等大规模并行任务。Part02GPU虚拟化目前主流的商用GPU虚拟化方案主要有:GPU直通模式、GPU切片虚拟化、GPUSRIOV模式等。(1)GPU直通模式:直通模式也叫pass-through模式,绕过虚拟机管理系统,将物理显卡单独分配给一个虚拟机,保留了GPU的完整性和独立性,失去了设备复用的可能性。具有性能损失小、功能兼容性好等特点。例如,Xenserver的直通模式使用英特尔设备虚拟化技术(IntelVT-d)技术将显示设备暴露给客户虚拟机。(2)GPU切片虚拟化:GPU切片虚拟化有两层含义:1.GPU的计算资源,即计算能力,被划分成时间片,由多个虚拟vGPU共享。调度时间片一般在1ms-10ms左右;2.划分GPU显存。以NVIDIA为例,如果将一个16GB内存的物理GPU分配为8个vGPU,则每个虚拟GPU独占2G内存。一般来说,显卡虚拟化就是对显卡进行时间片和显存分区的过程,并将这些显卡时间片和显存分区分配给虚拟机使用。由于支持显卡虚拟化的显卡一般可以根据需要分成不同规格的时间片,可以分配给多个虚拟机使用。实现原理其实就是在应用层拦截GPU相关的应用程序编程接口(API),通过重定向(仍然使用GPU)完成相应的功能,然后将执行结果返回给应用程序。以NVIDIA显卡虚拟化和Xenserver为例,服务器端虚拟化驱动软件可以将安装在服务器上的物理GPU转换成一个虚拟GPU,供多个虚拟机共享。用户层为CUDAAPI和维护CUDA相关硬件和软件状态的虚拟GPU(vGPU)提供库。GPU与用户的关系不再是一对一,而是一对多。第03部分GPU虚拟化不同于云桌面。云桌面是虚拟化桌面。目前其最大的缺陷在于用户体验较差,因为在图像处理密集型应用场景中,需要虚拟化桌面具有较高的图形图像处理能力和Graphics图像远程输出能力,而GPU虚拟化为这两个核心提供了强有力的支持能力。(1)图形图像处理能力:为满足各类用户的多样化需求,云桌面需要支持图形图像处理、工业设计、游戏等专业领域的应用场景,云服务中心需要支持显卡资源动态调度和管理,GPU虚拟化技术可以根据需要为云桌面虚拟机提供匹配的显卡计算资源,加速虚拟机的图形图像处理能力,加强图像渲染能力,防止大stand-单机游戏免掉帧!(2)远程图形图像输出能力:云桌面解决方案的另一个重要部分是将远程虚拟机的画面输出到终端屏幕的过程。画面的好坏和流畅度直接影响到前端桌面的交互体验。目前各种远程桌面传输协议都涉及到音视频编解码和流媒体技术。由于网络带宽和延迟的限制,远程桌面传输首先需要在本地对音视频源进行压缩编码,而音视频编码也需要强大的计算能力。例如,视频编解码中使用的H264编码技术,是视频编解码中使用最广泛、效率最高、最省时、最省流量的编码技术。对于视频流的快速、实时编解码,虚拟GPU资源可以提供足够的计算能力。【本文为专栏作家《移动实验室》原创稿件,转载请联系原作者】点此阅读更多本作者好文
