[发明专利]多核处理器操作系统负载均衡的实现方法无效
申请号: | 200810061134.9 | 申请日: | 2008-03-11 |
公开(公告)号: | CN101256515A | 公开(公告)日: | 2008-09-03 |
发明(设计)人: | 陈天洲;胡威;曹明腾;施青松;严力科;谢斌;冯德贵;王罡;蒋冠军;王宇杰 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F15/16 |
代理公司: | 杭州求是专利事务所有限公司 | 代理人: | 林怀禹 |
地址: | 310027浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种多核处理器操作系统负载均衡的实现方法。是通过对多核处理器操作系统运行时,对负载情况进行检测,并根据检测的负载情况对线程进行分配。本方法实现多核处理器操作系统负载的均衡,从而在多核处理器操作系统上运行的多线程程序能够在操作系统的调度下,多线程均衡的分布在不同的处理器核上,从而提高多处理器核的执行效率。 | ||
搜索关键词: | 多核 处理器 操作系统 负载 均衡 实现 方法 | ||
【主权项】:
1.一种多核处理器操作系统负载均衡的实现方法,其特征在于:1)调度域构建:处理器核初始化的过程中,访问每个处理器核;共享二级缓存的处理器核被划分到同一个调度域当中;这样,就可以形成若干个不同的调度域;2)负载向量计算:使用资源使用率和运行队列长度作为计算负载向量的因子,使用公式(1)计算处理器核的利用率FCPU,其中Tused为处理器运算时间,Tidle为处理器空闲时间,FCPU=Tused/(Tidle+Tused) (1)使用公式(2)计算负载向量Fload,其中FCPU为处理器核的利用率,利用公式(1)进行计算,Frun-queue为处理器核运行队列的长度;Fload=(FCPU+1)*Frun_queue (2)3)负载均衡检测:对于处理器核的一个调度域Pset={P1,P2,...,Pn},其中P1,P2,...,Pn是调度域Pset中的处理器核,对于Pset中的处理器核Pi会去检测该处理器核与其他处理器核是否有负载失衡的状况;每个处理器核都有自己的负载检查,负载检查的时间发生在线程分配、处理器空闲和固定时间间隔;负载均衡检查过程如下:第一步,Pi检测与它在同一个调度域中的处理器核Pj,Pj+1,......,Pj+k,若负载不均衡,则返回负载向量相差最大的处理器核P和Pi负载向量差值正负的标志W,检查结束;第二步,若同一调度域中的处理器核负载均衡,则去检查其他同层调度域中的负载,同层调度域的检查只需要检查其中任意一个处理器Pm即可;负载不均衡时,返回第一个负载量不平衡的处理器核P和Pi负载差正负的标志W;4)线程分配:当线程Tnew产生后,分配流程如下:当线程Tnew的状态为可运行后,调用父线程Tparent所在处理器核Pparent的检测负载均衡,若负载均衡,则该线程被进入父进程所在的处理器核的运行队列中;否则,该线程被插到负载最小的处理器核Pload_least的运行队列中;5)运行时动态负载均衡:对于处理器核的集合Pset,对于任意Pi属于Pset,都有独立的检查负载均衡策略。这里采用的负载均衡检查策略与步骤3)中相同:若Pi有线程运行,负载检测由Pi隔固定的时间间隔调用;若Pi空闲,则减少时间间隔数,以尽量少的时间间隔进行检测。若所有处理器核都空闲,则调整检查负载均衡的时间间隔数;处理器核Pi发现负载均衡,负载均衡检查策略会返回与Pi负载不均衡的处理器Pt以及负载大小关系比较值W;若W>0,Pi的负载量小于Pt,需要迁移Pi中部分就绪队列中的线程到Pt的就绪队列中;若W<0,则需要从Pt中的就绪队列迁移部分线程到Pi中,以达到负载均衡;如果W=0时,负载已经均衡,不需要迁移线程队列。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200810061134.9/,转载请声明来源钻瓜专利网。
- 上一篇:一种活菌饲料的生产方法
- 下一篇:一种带宽管理方法及装置