[发明专利]一种线程调度方法、线程调度装置及多核处理器系统有效
申请号: | 201310134356.X | 申请日: | 2011-11-16 |
公开(公告)号: | CN103197977A | 公开(公告)日: | 2013-07-10 |
发明(设计)人: | 刘仪阳;陈渝;谭玺;崔岩 | 申请(专利权)人: | 华为技术有限公司;清华大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F15/16 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 线程 调度 方法 装置 多核 处理器 系统 | ||
1.一种线程调度方法,其特征在于,包括:
当第一处理器核发生线程上下文切换时,将所述第一处理器核当前运行的线程在当前时间片的高速缓冲存储器cache访问率累加到所述第一处理器核总的cache访问率中,将累加次数计数值加一;
获取与所述第一处理器核具有对应关系的第二处理器核总的cache访问率及累加次数计数值;
根据所述第一处理器核总的cache访问率及累加次数计数值,计算所述第一处理器核的平均cache访问率,根据所述第二处理器核总的cache访问率及累加次数计数值,计算所述第二处理器核的平均cache访问率,并将所述第一处理器核的平均cache访问率和所述第二处理器核的平均cache访问率求和作为第一参数值;
扫描所述第一处理器核对应的处于就绪状态的待运行线程的集合,计算当前扫描的线程在上个时间片的cache访问率与所述第二处理器核当前运行的线程在上个时间片的cache访问率的和,作为第二参数值;
当所述第一参数值与第二参数值之间的差值大于或等于预置的数值,则将当前运行的线程切换成当前扫描的线程。
2.根据权利要求1所述的方法,其特征在于,所述获取与所述第一处理器核具有对应关系的第二处理器核总的cache访问率及累加次数计数值包括:
根据所述第一处理器核的身份标识码ID及预置的计算方法确定与所述第一处理器核具有对应关系的第二处理器核,或者,根据所述第一处理器核的ID查找处理器核分组表确定与所述第一处理器核具有对应关系的第二处理器核;
从所述第二处理器核中获得所述第二处理器核总的cache访问率及累加次数计数值。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一处理器核总的cache访问率及累加次数计数值,计算所述第一处理器核的平均cache访问率,根据所述第二处理器核总的cache访问率及累加次数计数值,计算所述第二处理器核的平均cache访问率,并将所述第一处理器核的平均cache访问率和所述第二处理器核的平均cache访问率求和作为第一参数值,包括:
将所述第一处理器核总的cache访问率除以所述第一处理器核的所述累加次数计数值,得到所述第一处理器核的平均cache访问率;
将所述第二处理器核总的cache访问率除以所述第二处理器核的累加次数计数值,得到所述第二处理器核的平均cache访问率;
将所述第一处理器核平均cache访问率与所述第二处理器核平均cache访问率相加,得到所述第一参数值。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
当所述第一参数值与第二参数值之间的差值小于预置的数值,则扫描下一条线程,并返回执行所述计算当前扫描的线程的在上个时间片的cache访问率与所述第二处理器核当前运行的线程在上个时间片的的cache访问率的和,作为第二参数值的步骤。
5.根据权利要求4所述的方法,其特征在于,
所述第一处理器核完成线程切换后,将当前运行的线程的类型标识保存到所述第一处理器核的当前运行线程描述符中。
6.一种线程调度装置,其特征在于,包括:
第一累加单元,用于当第一处理器核发生线程上下文切换时,将所述第一处理器核当前运行的线程的高速缓冲存储器cache访问率累加到所述第一处理器核总的cache访问率中,将累加次数计数值加一;
第一获取单元,用于获取与所述第一处理器核具有对应关系的第二处理器核总的cache访问率及累加次数计数值;
第一计算单元,用于根据所述第一处理器核总的cache访问率及累加次数计数值,计算所述第一处理器核的平均cache访问率,根据所述第二处理器核总的cache访问率及累加次数计数值,计算所述第二处理器核的平均cache访问率,并将所述第一处理器核的平均cache访问率和所述第二处理器核的平均cache访问率求和作为第一参数值;
第一扫描计算单元,用于扫描所述第一处理器核对应的处于就绪状态的待运行线程的集合,计算当前扫描的线程在上个时间片的cache访问率与所述第二处理器核当前运行的线程在上个时间片的cache访问率的和,作为第二参数值;
第一处理单元,用于当所述第一参数值与第二参数值之间的差值大于或等于预置的数值,则将当前运行的线程切换成当前扫描的线程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;清华大学,未经华为技术有限公司;清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310134356.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:汽车油泵盖装配拆装工具
- 下一篇:复位式顶柱夹紧装置