正文内容 评论(0)
2019年12月,中国电子旗下天津麒麟和中标软件强强整合,打造中国操作系统新旗舰,作为操作系统的国家队,麒麟软件不忘打造中国操作系统核心力量的初心,国产操作系统是网信生态的根基,处于整个生态产业链的核心位置。作为国产操作系统的领头雁,麒麟软件在开拓国产生态的道路上,与伙伴紧密协同,打造开放共赢的生态体系。
在当前GPU大厂不开源核外包、不支持国产CPU架构的背景下,VirtIO-GPU给开源社区带了新的曙光,在多种优化手段后,银河麒麟操作系统虚拟机中的3D渲染性能在国产CPU平台飞腾、鲲鹏、海光、龙芯上均有大幅提升,这使得云端高性能办公正在逐步成为现实。
目前成熟的GPU虚拟化方案主要有:软件模拟GPU、GPU分片虚拟化、API转发等。麒麟软件虚拟GPU优化方案采用API转发方案的VirtIO-GPU虚拟化技术,VirtIO-GPU在有后端GPU硬件渲染情况下,客户机系统中图形3D性能大幅提升,在网页浏览、视频播放、文件办公等场景大幅提升了使用体验,大幅降低CPU使用率。目前已经从未优化的5%左右效率稳定提升到优化后的60%以上。 在Unigine Valley测试中,深度优化性能相比初步优化时(有GPU后端渲染)的2.5%提升至81%。
Glmark2测试性能效率提升到60%以上
采用VirtIO-GPU虚拟化技术的云桌面场景中运行大型3D游戏、高清视频编解码等变成现实,且能够兼顾1:N的灵活性和隔离性。优化后的场景可在不降低客户图形显示加速性能的前提下,租户数量提升一倍,大幅降低了客户成本。
多虚拟机共享后端GPU时租户数量提升一倍
方案介绍
图:VirtIO-GPU 云桌面技术栈框架
在开源技术基础上,麒麟软件研发团队引入零拷贝技术和新的虚拟机显示器刷新加速模块,并且在命令转发、状态同步逻辑等进行了深度优化。
图形资源支持零拷贝
目前对于同一资源,虚拟机侧的VirtIO-GPU前端驱动与宿主机侧的后端设备均有各自的副本,为了保持二者之间的数据同步,因而需要频繁且大规模的内存复制。通过引入零拷贝技术,VirtIO-GPU前端驱动和后端设备可共享同一资源实例,从而避免了内存复制,大大降低了VirtIO-GPU渲染指令的路径延时,提高了渲染效率,并在一定程度上减少了对CPU资源的占用。
前后端更加高效的状态同步
对VirtIO-GPU设备与物理GPU之间的命令转发、状态同步逻辑进行了深度优化。经测试,在极端情况下,二者之间的状态同步延迟时间比之前降低约100倍,这极大的缩短了VirtIO-GPU渲染指令的执行时间,提高了响应速度。
显示画面的刷新更加实时
引入了新的虚拟机显示器刷新加速模块,可支持将VirtIO-GPU等虚拟显卡的输出画面更加及时的刷新到各种虚拟显示器中,因而具有更好的实时性,可有效减少用户侧图像画面的延迟。