一种用于多核处理器的负载均衡方法和装置制造方法及图纸

技术编号:21273291 阅读:36 留言:0更新日期:2019-06-06 07:50
本发明专利技术实施例涉及计算机技术领域,尤其涉及一种用于多核处理器的负载均衡方法和装置,包括:针对至少一个共享数据,获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程;判断所述第二进程所携带的第二处理器标识与所述第一处理器标识是否相同,若不相同,则将所述第二进程所携带的处理器标识修改为所述第一处理器标识;在负载均衡周期内,将所述第二进程迁移至所述第一处理器下。可以看出,可将共享数据的多个进程都迁移至同一处理器下,不用再分别将共享数据放置到各自的缓存下,而是将共享数据放置到同一处理器的缓存中,因此,能够提升操作系统的缓存利用率,从而能够提升进程的执行效率。

A Load Balancing Method and Device for Multi-Core Processors

The embodiment of the present invention relates to the field of computer technology, in particular to a load balancing method and device for a multi-core processor, including: obtaining the first processor identification carried by the first process accessing the shared data and the second process requiring access to the shared data for at least one shared data; determining the second processor tag carried by the second process; To determine whether the first processor identifier is the same or not, the processor identifier carried by the second process is modified to the first processor identifier, and the second process is migrated to the lower part of the first processor during the load balancing cycle. It can be seen that multiple processes sharing data can be migrated to the same processor, instead of putting the shared data into their respective caches, they can put the shared data into the same processor's caches. Therefore, the cache utilization of the operating system can be improved, and the execution efficiency of the process can be improved.

【技术实现步骤摘要】
一种用于多核处理器的负载均衡方法和装置
本专利技术实施例涉及计算机
,尤其涉及一种用于多核处理器的负载均衡方法和装置。
技术介绍
目前,多核处理器已成为主流的处理器,得到了广泛的应用。Linux操作系统内核的进程调度器在SMP(SymmetricalMulti-Processing,对称多处理)体系结构下的性能是比较优异的,也被广泛采用。但SMP体系结构下Linux操作系统高速缓存利用率不足,很大程度上降低了进程的执行效率。例如,当多核处理器下的多个进程存在共用共享数据时,则每个进程在使用该共享数据时,均需要将该共享数据从内存中取出放置到各自的缓存中,如此,造成操作系统的缓存的利用率不足,也降低了进程的执行效率。
技术实现思路
本专利技术实施例提供一种用于多核处理器的负载均衡方法和装置,用以提升操作系统的缓存利用率,从而提升进程的执行效率。本专利技术实施例提供一种用于多核处理器的负载均衡方法,包括:针对至少一个共享数据,获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程;判断所述第二进程所携带的第二处理器标识与所述第一处理器标识是否相同,若不相同,则将所述第二进程所携带的处理器标识修改为所述第一处理器标识;在负载均衡周期内,针对任一处理器下的第二进程,调度器判断所述第二进程所携带的处理器标识与该处理器的标识是否相同,如果不相同,则将所述第二进程迁移至所述第一处理器下。较佳的,所述获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程,包括:确定访问所述共享数据的多个进程;监控到所述多个进程中的第一个使用所述共享数据的第一进程后,获取所述第一进程所携带的第一处理器标识;将所述第二进程所携带的处理器标识修改为所述第一处理器标识,包括:针对所述多个进程中除所述第一进程以外的每一进程,将所述进程所携带的处理器标识修改为所述第一处理器标识。较佳的,在获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程之前,还包括:在初始化时,针对任一进程,将所述进程所携带的处理器标识赋予所述进程。较佳的,在将所述第二进程所携带的处理器标识修改为所述第一处理器标识之后,还包括:统计修改为所述第一处理器标识的进程数量;根据所述进程数量,确定进程迁移量;在调度器判断所述进程所携带的处理器标识与该处理器的标识是否相同之前,还包括:判断所述进程迁移量不为零。本专利技术实施例还提供一种用于多核处理器的负载均衡装置,包括:获取模块,用于针对至少一个共享数据,获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程;反馈模块,用于判断所述第二进程所携带的第二处理器标识与所述第一处理器标识是否相同,若不相同,则将所述第二进程所携带的处理器标识修改为所述第一处理器标识;调度模块,用于在负载均衡周期内,针对任一处理器下的第二进程,判断所述第二进程所携带的处理器标识与该处理器的标识是否相同,如果不相同,则将所述第二进程迁移至所述第一处理器下。较佳的,所述获取模块,具体用于:确定访问所述共享数据的多个进程;监控到所述多个进程中的第一个使用所述共享数据的第一进程后,获取所述第一进程所携带的第一处理器标识;所述反馈模块,具体用于:针对所述多个进程中除所述第一进程以外的每一进程,将所述进程所携带的处理器标识修改为所述第一处理器标识。较佳的,还包括:初始化模块;所述初始化模块,用于在初始化时,针对任一进程,将所述进程所携带的处理器标识赋予所述进程。较佳的,所述反馈模块,还用于:在将所述第二进程所携带的处理器标识修改为所述第一处理器标识之后,统计修改为所述第一处理器标识的进程数量;根据所述进程数量,确定进程迁移量;在调度模块判断所述进程所携带的处理器标识与该处理器的标识是否相同之前,判断所述进程迁移量不为零。本专利技术另一实施例提供了一种计算设备,其包括存储器和处理器,其中,所述存储器用于存储程序指令,所述处理器用于调用所述存储器中存储的程序指令,按照获得的程序执行上述任一种方法。本专利技术另一实施例提供了一种计算机存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述任一种方法。上述实施例提供的一种用于多核处理器的负载均衡方法和装置,包括:针对至少一个共享数据,获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程;判断所述第二进程所携带的第二处理器标识与所述第一处理器标识是否相同,若不相同,则将所述第二进程所携带的处理器标识修改为所述第一处理器标识;在负载均衡周期内,针对任一处理器下的第二进程,调度器判断所述第二进程所携带的处理器标识与该处理器的标识是否相同,如果不相同,则将所述第二进程迁移至所述第一处理器下。可以看出,当多核操作系统中存在共享数据时,首先获取已访问该共享数据的第一进程所携带的第一处理器标识及需要访问该共享数据的第二进程,然后在第二进程所携带的第二处理器标识与第一进程携带的第一处理器标识不相同时,将第二进程所携带的处理器标识修改第一处理器标识,最后在负载均衡周期内,针对任一处理器下的第二进程,调度器判断第二进程所携带的处理器标识与该处理器的标识是否相同,如果不相同,则将第二进程迁移至第一处理器下,从而在共享数据的其余进程所携带的处理器标识与第一处理器标识不相同时,均可将其余进程迁移至第一处理器下,如此,可将共享数据的多个进程都迁移至同一处理器下,这样,当共享数据的多个进程再使用该共享数据时,不用再分别将共享数据放置到各自的缓存下,而是将共享数据放置到第一处理器的缓存中,因此,能够提升操作系统的缓存利用率,从而能够提升进程的执行效率。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。图1为本专利技术实施例提供的一种用于多核处理器的负载均衡方法的流程示意图;图2为本专利技术实施例提供的反馈流程示意图;图3为本专利技术实施例提供的调度器判断的流程示意图;图4为本专利技术实施例提供的一种用于多核处理器的负载均衡装置的结构示意图。具体实施方式为了使本专利技术的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。需要说明的是,本专利技术实施例提供的负载均衡方法和装置可应用于包含同构多核处理器的操作系统中。例如,可应用于SMP(SymmetricalMulti-Processing,对称多处理)体系结构下的操作系统中。图1示例性示出了本专利技术实施例提供的一种用于多核处理器的负载均衡方法的流程示意图,如图1所示,该方法可包括:S101、针对至少一个共享数据,获取已访问该共享数据的第一进程所携带的第一处理器标识及需要访问该共享数据的第二进程。S102、判断第二进程所携带的第二处理器标识与第一处理器标识是否相同,如果不相同,转至步骤是S103,否则,结束流程。S103、将第二进程所携带的处理器标识修改为第一处理器标识。S104、在负载均衡周期内,针对任一处理器下的第二进程,调度器判断第二进程所携带的处理器标识与该处理器的标识是否相同,如本文档来自技高网...

【技术保护点】
1.一种用于多核处理器的负载均衡方法,其特征在于,包括:针对至少一个共享数据,获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程;判断所述第二进程所携带的第二处理器标识与所述第一处理器标识是否相同,若不相同,则将所述第二进程所携带的处理器标识修改为所述第一处理器标识;在负载均衡周期内,针对任一处理器下的第二进程,调度器判断所述第二进程所携带的处理器标识与该处理器的标识是否相同,如果不相同,则将所述第二进程迁移至所述第一处理器下。

【技术特征摘要】
1.一种用于多核处理器的负载均衡方法,其特征在于,包括:针对至少一个共享数据,获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程;判断所述第二进程所携带的第二处理器标识与所述第一处理器标识是否相同,若不相同,则将所述第二进程所携带的处理器标识修改为所述第一处理器标识;在负载均衡周期内,针对任一处理器下的第二进程,调度器判断所述第二进程所携带的处理器标识与该处理器的标识是否相同,如果不相同,则将所述第二进程迁移至所述第一处理器下。2.如权利要求1所述的方法,其特征在于,所述获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程,包括:确定访问所述共享数据的多个进程;监控到所述多个进程中的第一个使用所述共享数据的第一进程后,获取所述第一进程所携带的第一处理器标识;将所述第二进程所携带的处理器标识修改为所述第一处理器标识,包括:针对所述多个进程中除所述第一进程以外的每一进程,将所述进程所携带的处理器标识修改为所述第一处理器标识。3.如权利要求2所述的方法,其特征在于,在获取已访问所述共享数据的第一进程所携带的第一处理器标识及需要访问所述共享数据的第二进程之前,还包括:在初始化时,针对任一进程,将所述进程所携带的处理器标识赋予所述进程。4.如权利要求1所述的方法,其特征在于,在将所述第二进程所携带的处理器标识修改为所述第一处理器标识之后,还包括:统计修改为所述第一处理器标识的进程数量;根据所述进程数量,确定进程迁移量;在调度器判断所述进程所携带的处理器标识与该处理器的标识是否相同之前,还包括:判断所述进程迁移量不为零。5.一种用于多核处理器的负载均衡装置,其特征在于,包括:获取模块,用于针对至少一个共享数...

【专利技术属性】
技术研发人员:张鹏飞吴乐冯园园
申请(专利权)人:大唐移动通信设备有限公司
类型:发明
国别省市:北京,11

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

1