信云sCloud解决方案突破ARM服务器性能瓶颈

日前,首届openEuler Summit在北京顺利举行,本次大会汇聚行业领袖、业界资深专家、社区技术委员、Maintainer、广大开发者及用户,围绕软硬件协同、云边端和多样性算力场景展开深入探讨,共同挖掘技术创新与开源生态的无限潜能。深信服信云sCloud研发负责人庾志辉受邀出席本次会议,并在现场分享了信云sCloud在基于鲲鹏服务器+openEuler的场景下,进行计算、存储、网络等虚拟化的性能优化方案。


信云sCloud解决方案突破ARM服务器性能瓶颈


庾志辉表示,目前国内ARM的服务器,主要面临两个问题,一是在某些场景下单核能力与x86服务器相比,还有一些差距;二是ARM服务器的单核物理CPU有64个核2个NUMA,x86只有14个核1个NUMA,而多NUMA会导致线程远地访问内存。因此,在实际使用过程中,ARM服务器需要进行性能优化。


深信服信云sCloud不仅成功在ARM中实现了95%的x86功能,而且信云sCloud还调整了底层架构,能同时同集群内异构兼容多款操作系统和多款主流ARM服务器。具体在鲲鹏服务器+openEuler的场景下,信云sCloud提出了以下解决办法:


ARM单核能力:“多线程+缓存”解决


在IO解析场景下,当虚拟机下发IO到客户端并解析IO动作的时候,x86需要单核的算力就能解析,但由于ARM的单核计算能力与x86相比,还有一些差距,可能会造成解析阻塞,成为整个性能瓶颈。因此,信云sCloud在整个数据流程中加了一层缓存同时增加线程,有效解决了ARM的性能瓶颈问题。


多核多NUMA:“NUMA智能调度”解决


ARM服务器相对于x86服务器来说比较特殊,其单颗物理CPU有64个核,2个NUMA节点。如何有效把这些特性利用起来,提高整个平台的性能,成为虚拟化平台性能优化的大方向。信云sCloud采用深信服自研的NUMA智能调度技术,以虚拟机为单位在多个NUMA内进行调度平衡,尽量减少跨NUMA的远地内存访问,提高整体性能。


在本次会议中,庾志辉还通过调度优化、负载平衡、架构透传、重要虚拟机等场景,详细地分享了深信服自研的NUMA智能调度技术:


  • 调度优化


内核的CPU负载平衡机制,是以线程task_struct为调度单位的,而虚拟机的vCPU是一组线程task_struct。这就存在虚拟机的多个vCPU被调度到不同物理CPU核上,导致跨NUMA访问内存,性能下降。信云sCloud 的NUMA机制是在平台上实现,以虚拟机为调度单位来进行调度优化,保证了虚拟机的vCPU尽可能的调度到同个NUMA上,避免内存远地访问。


  • 负载平衡


内核的负载平衡优先考虑的是CPU之间的负载情况,然后考虑NUMA远地内存问题。内核做负载平衡时是直接把线程从CPU负载高的迁移到负载低的CPU上,不会考虑内存相关影响,也不会迁移内存页。


信云sCloud 的NUMA调度机制,通过算法对历史数据和现有负载情况做评估,来判断NUMA节点的整体超配情况。当超过阈值时,会同时根据虚拟机的内存访问情况和NUMA负载情况,来选择需要迁移的虚拟机。最终以虚拟机为单位把整个虚拟机vCPU迁移到其他负载较小的NUMA节点上,同时把相关的内存也迁移过来,以保证虚拟机本地内存访问。


  • 架构透传


默认情况下,虚拟NUMA架构和物理NUMA架构是没有对应,这就会导致虚拟NUMA节点在各个物理NUMA节点上随机调度,没有充分利用物理NUMA架构。信云sCloud通过识别物理服务器的NUMA架构,并透传给虚拟节点,让虚拟NUMA节点和物理NUMA节点进行对应绑定。虚拟机内部业务就可以真正使用到物理NUMA特性,提高虚拟机的性能。


  • 重要虚拟机


在特定业务场景中,重要虚拟机无法得到高优先级的资源保障。信云sCloud可以自动识别虚拟机优先级,在整体负载不超配的场景下,通过独占NUMA来保障资源。在整体负载超配的场景下,通过调整重要虚拟机的vCPU权重来保障重要虚拟机被优先调度,以保障用户的重要业务。


最后,庾志辉表示,由于低能耗和低成本的优势,ARM服务器在我国的应用范围一直在不断扩大。特别是近年来国内市场环境的推动,使得ARM服务器成为了IT行业的新宠儿。


目前,信服云已经为众多用户交付了ARM架构的云计算底座,特别在业务改造、x86服务器业务迁移至ARM服务器、两种架构服务器统一纳管等等场景下,信服云已经拥有了丰富的技术积累。未来,信服云也将继续发挥自身的技术优势,为用户带来更优的解决方案。


信服云:助力数据中心云化演进 在云计算业务上,深信服作为成长迅猛的创新云计算厂商,致力于为全球用户交付省时省事、平滑弹性、安全可靠、业务承载丰富的数据中心云化的优选方案及服务,解决用户数字化转型各阶段核心问题,解放生产力,专注业务创新。