触发负载均衡调度的方法、装置及服务器制造方法及图纸

技术编号:19023157 阅读:39 留言:0更新日期:2018-09-26 19:00
本发明专利技术实施例提供一种触发负载均衡调度的方法、装置及服务器。该方法包括:确定内存页面的存在属性信息是否为不允许换出属性信息;若内存页面的存在属性信息为不允许换出属性信息,将内存页面的保护属性信息设置为保护状态属性信息,并将存在属性信息修改为允许换出属性信息,以使内存页面被再次访问时根据允许换出属性信息触发负载均衡调度过程。本发明专利技术实施例通过将内存页面的保护属性信息设置为保护状态属性信息,保护不对进程正在访问的内存页面进行负载均衡调度,保证进程的正常运行;并将存在属性信息修改为允许换出属性信息,以使内存页面被再次访问时根据允许换出属性信息触发负载均衡调度过程,解决了基于MIPS的NUMA服务器性能抖动的问题。

【技术实现步骤摘要】
触发负载均衡调度的方法、装置及服务器
本专利技术实施例涉及计算机
,尤其涉及一种触发负载均衡调度的方法、装置及服务器。
技术介绍
非一致内存访问架构(NonUniformMemoryAccessArchitecture,简称NUMA架构)服务器包括通过高速互连总线连接的多个NUMA节点,每个NUMA节点包括处理器(CentralProcessingUnit,简称CPU)、缓存、内存和内存控制器,其中NUMA节点CPU的多个核可以是无内部互锁流水级的微处理器(Microprocessorwithoutinterlockedpipedstages,简称MIPS)的核。MIPS是一种采用精简指令集的微处理器,因其具有简洁、具有高度扩展性、高性能、低功耗等优点,被广泛应用于NUMA服务器中。采用MIPS作为CPU核的NUMA服务器称作基于MIPS的NUMA服务器。基于MIPS的NUMA服务器在创建进程时为进程随机地分配内存,一个进程对应的内存可能分布在多个不同的NUMA节点上。在进程运行过程中,当需要访问目标内存进行数据存取时,若运行该进程的CPU与目标内存在同一NUMA节点上,该CPU直接通过内存控制器访问本地内存;若运行进程的CPU与目标内存不在同一NUMA节点上,则该CPU需通过其所在NUMA节点与目标内存所在NUMA节点之间的高速互连总线访问目标内存所在NUMA节点的内存(相对于该CPU来说为远程内存),即CPU需进行跨节点访问。例如,为进程1分配的内存分布在节点A和节点B上,假设进程1当前运行的CPU为节点A上的CPU-A1,在进程1运行过程中,若需要访问的目标内存在节点A上,由于CPU-A1与目标内存在同一节点上,CPU-A1直接通过节点A的内存控制器访问本地内存;若目标内存在节点B上,由于CPUA1与目标内存不在同一节点,CPU-A1需通过节点A和节点B之间的高速互连总线访问节点B上的内存。基于MIPS的NUMA服务器中,CPU跨节点访问远程内存的延迟远远大于其访问本地内存的延迟。当服务器上存在大量的跨节点访问情况的时候,服务器的性能大大降低,由于进程访问内存节点的不确定性,会造成程序发生性能抖动。因此,基于MIPS的NUMA服务器如何触发负载均衡,成为亟待解决的技术问题。
技术实现思路
本专利技术实施例提供一种触发负载均衡调度的方法、装置及服务器,以解决当当服务器上存在大量的跨节点访问情况的时候,基于MIPS的NUMA服务器的性能大大降低,发生性能抖动的问题。本专利技术实施例的一个方面是提供一种触发负载均衡调度的方法,应用于基于MIPS的NUMA服务器,包括:确定内存页面的存在属性信息是否为不允许换出属性信息;若所述内存页面的存在属性信息为所述不允许换出属性信息,则将所述内存页面的保护属性信息设置为保护状态属性信息,并将所述存在属性信息修改为允许换出属性信息,以使所述内存页面被再次访问时根据所述允许换出属性信息触发负载均衡调度过程。本专利技术实施例的另一个方面是提供一种触发负载均衡调度的装置,包括:属性信息确定模块,用于确定内存页面的存在属性信息是否为不允许换出属性信息;属性信息设置模块,用于若所述内存页面的存在属性信息为所述不允许换出属性信息,则将所述内存页面的保护属性信息设置为保护状态属性信息,并将所述存在属性信息修改为允许换出属性信息,以使所述内存页面被再次访问时根据所述允许换出属性信息触发负载均衡调度过程。本专利技术实施例的另一个方面是提供一种NUMA服务器,包括:至少一个NUMA节点,每个所述NUMA节点包括CPU和内存区域,所述内存区域为由内存储器划分成的存储区域;以及,存储在所述内存储器上并可以由任一所述CPU运行的计算机程序,所述任一所述CPU运行的所述计算机程序时实现上述所述的触发负载均衡调度的方法。本专利技术实施例提供的触发负载均衡调度的方法、装置及服务器,通过确定内存页面的存在属性信息是否为不允许换出属性信息,可以确定该内存页面是否正在被访问;若确定内存页面的存在属性信息为不允许换出属性信息,说明该内存页面正在被某个进程访问,则将内存页面的保护属性信息设置为保护状态属性信息,以保护不针对该正在被访问的内存页面进行负载均衡调度,从而保证当前正在运行进程不受干扰并能够继续正常运行;并将存在属性信息修改为允许换出属性信息,以使内存页面被再次访问时根据允许换出属性信息触发负载均衡调度过程,以针对该内存页面进行负载均衡调度,增加了触发负载均衡调度程序的机制,使得基于MIPS的NUMA服务器可以通过触发负载均衡调度程序,进行负载均衡调度,从而解决了基于MIPS的NUMA服务器性能抖动的问题。附图说明图1为本专利技术实施例一提供的触发负载均衡调度的方法流程图;图2为本专利技术实施例一提供的一种CPU芯片所采用的现有页表项的结构示意图;图3为本专利技术实施例二提供的触发负载均衡调度的方法流程图;图4为本专利技术实施例二提供的修改后的CPU芯片页表项的结构示意图;图5为本专利技术实施例三提供的触发负载均衡调度的装置结构图;图6为本专利技术实施例四提供的触发负载均衡调度的装置结构图;图7为本专利技术实施例五提供的基于MIPS的NUMA服务器的架构图。具体实施方式为使本专利技术的技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。现有的基于MIPS的NUMA服务器,当服务器上存在大量的跨节点访问情况的时候,服务器的性能大大降低,由于进程访问内存节点的不确定性,会造成程序发生性能抖动,需要对各个NUMA节点进行负载均衡。例如,若一个NUMA节点A的内存负载量大,另一NUMA节点B的内存负载量小,需要节点A上的部分内存迁移到节点B上;或者,需要将NUMA节点上负载量大的CPU上的进程迁移到同一或者另一NUMA节点上负载量小的CPU上等等。目前本领域人员多是针对基于X86的NUMA服务器进行研究,开发出适用于基于X86的NUMA服务器的负载均衡调度的算法,但是这些负载均衡调度的算法并不能直接适用于基于MIPS的NUMA服务器。需要说明的是,本专利技术实施例中,除明确指出是特指哪种服务器(例如,基于X86的NUMA服务器)外,实施例中出现的“服务器”均指上述“基于MIPS的NUMA服务器”;如无特殊说明,实施例中出现的“节点”均指“NUMA节点”。实施例一图1为本专利技术实施例一提供的触发负载均衡调度的方法流程图。本专利技术实施例针对现有技术中当服务器上存在大量的跨节点访问情况的时候,服务器的性能大大降低,基于MIPS的NUMA服务器的性能大大降低,发生性能抖动的问题,提供了触发负载均衡调度的方法。该方法应用于基于MIPS的NUMA服务器,具体步骤如下:步骤S101、确定内存页面的存在属性信息是否为不允许换出属性信息。在实际应用中,服务器的系统内核中存储有用于管理内存页面的页表,每个内存页面对应于页表中的一个页表项,每个页表项中包括多个按照预设顺序从低位到高位依次排列的属性位,内存页面的属性信息与页表项中的属性位一一对应。存在属性信息是本文档来自技高网
...

【技术保护点】
1.一种触发负载均衡调度的方法,应用于基于MIPS的NUMA服务器,其特征在于,包括:确定内存页面的存在属性信息是否为不允许换出属性信息;若所述内存页面的存在属性信息为所述不允许换出属性信息,则将所述内存页面的保护属性信息设置为保护状态属性信息,并将所述存在属性信息修改为允许换出属性信息,以使所述内存页面被再次访问时根据所述允许换出属性信息触发负载均衡调度过程。

【技术特征摘要】
1.一种触发负载均衡调度的方法,应用于基于MIPS的NUMA服务器,其特征在于,包括:确定内存页面的存在属性信息是否为不允许换出属性信息;若所述内存页面的存在属性信息为所述不允许换出属性信息,则将所述内存页面的保护属性信息设置为保护状态属性信息,并将所述存在属性信息修改为允许换出属性信息,以使所述内存页面被再次访问时根据所述允许换出属性信息触发负载均衡调度过程。2.根据权利要求1所述的方法,其特征在于,还包括:若所述内存页面的存在属性信息为允许换出属性信息,则触发负载均衡调度过程。3.根据权利要求1或2所述的方法,其特征在于,若在将所述内存页面的保护属性信息设置为保护状态属性信息之前,所述内存页面的类型属性信息为大页内存属性信息,则在所述将所述存在属性信息修改为允许换出属性信息之后,还包括:将所述内存页面的类型属性信息设置为大页内存属性信息。4.根据权利要求3所述的方法,其特征在于,在所述触发负载均衡调度过程之前,还包括:若所述内存页面的保护属性信息为保护状态属性信息,则将所述内存页面的存在属性信息设置为不允许换出属性信息。5.根据权利要求1或2所述的方法,其特征在于,每个内存页面对应于一个页表项,所述页表项中包括多个按照预设顺序从低位到高位依次排列的属性位,所述内存页面的所述属性信息与所述页表项中的所述属性位一一对应;所述保护属性信息对应的保护属性位位于拆分属性位的高位。6.根据权利要求5所述的方法,其特征在于,若所述页表项包括禁止执行属性位,则所述保护属性位位于所述禁止执行属性位与所述拆分属性位之间。7.一种触发负载均衡调度的装置,其特征在于,包括:属性信息确定模块,...

【专利技术属性】
技术研发人员:李星张爽爽高翔
申请(专利权)人:龙芯中科技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1