[发明专利]用于在多线程计算机系统中提供高性能和公平的机制在审
申请号: | 201380060973.8 | 申请日: | 2013-06-24 |
公开(公告)号: | CN104838355A | 公开(公告)日: | 2015-08-12 |
发明(设计)人: | J·克烈斯特;D·索尔蒂斯;R·巴蒂亚;R·斯里尼瓦桑;S·博斯提安;R·M·布鲁姆伯格 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F13/14;G11C11/40 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 毛力 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 多线程 计算机系统 提供 性能 公平 机制 | ||
1.一种处理器,包括:
执行流水线,用于执行多个线程,所述多个线程包括第一线程和第二线程;
多线程控制器MTC,耦合至所述执行流水线,所述多线程控制器用于:基于线程切换策略,确定是否在所述第一线程和所述第二线程之间切换线程,所述线程切换策略是从基于所述第一线程和所述第二线程的不公平等级的多个线程切换策略的列表中选出的;以及响应于确定切换线程,从执行所述第一线程切换到执行所述第二线程,其中,所述线程切换策略在滑动尺上,使得在所述滑动尺的中间区域中实现了所述第一线程与所述第二线程之间的公平,并且在所述滑动尺的每一端上,相应的线程切换策略被移向为受害者线程提供最大公平。
2.如权利要求1所述的处理器,其特征在于,所述不公平等级是基于分别与所述第一线程和所述第二线程相关联的第一计数器和第二计数器而被确定的。
3.如权利要求2所述的处理器,其特征在于,所述第一计数器包括所述第一线程被拒绝访问所述执行流水线的循环的数目,并且所述第二计数器包括所述第二线程被拒绝访问所述执行流水线的循环的数目。
4.如权利要求2所述的处理器,其特征在于,针对所述第一线程被拒绝访问所述执行流水线的每一个循环,使所述第一计数器递增第一预定值,并且针对所述第二线程被拒绝访问所述执行流水线的每一个循环,使所述第二计数器递增第二预定值。
5.如权利要求2所述的处理器,其特征在于,当所述第一线程被允许访问所述执行流水线的循环数目匹配第三预定阈值时,使所述第一计数器递减,并且当所述第二线程被允许访问所述执行流水线的循环数目匹配第四预定阈值时,使所述第二计数器递减。
6.如权利要求1所述的处理器,其特征在于,在所述第一线程和所述第二线程之间的切换是分别基于所述第一线程和所述第二线程的优先级等级和执行状态而确定的。
7.如权利要求6所述的处理器,其特征在于,线程的优先级是经由从与所述线程相关联的软件程序发布的指令而被设置的。
8.一种方法,包括:
执行多个线程,所述多个线程包括第一线程和第二线程;
基于线程切换策略,确定是否在所述第一线程和所述第二线程之间切换线程,所述线程切换策略是从基于所述第一线程和所述第二线程的不公平等级的多个线程切换策略的列表中选出的,其中,所述线程切换策略在滑动尺上,使得在所述滑动尺的中间区域中实现了所述第一线程与所述第二线程之间的公平,并且在所述滑动尺的每一端上,相应的线程切换策略被移向为受害者线程提供最大公平;以及
响应于确定切换线程,从执行所述第一线程切换到执行所述第二线程。
9.如权利要求8所述的方法,其特征在于,所述不公平等级是基于分别与所述第一线程和所述第二线程相关联的第一计数器和第二计数器而被确定的。
10.如权利要求9所述的方法,其特征在于,所述第一计数器包括所述第一线程被拒绝访问所述执行流水线的循环的数目,并且所述第二计数器包括所述第二线程被拒绝访问所述执行流水线的循环的数目。
11.如权利要求9所述的方法,其特征在于,针对所述第一线程被拒绝访问所述执行流水线的每一个循环,使所述第一计数器递增第一预定值,并且针对所述第二线程被拒绝访问所述执行流水线的每一个循环,使所述第二计数器递增第二预定值。
12.如权利要求9所述的方法,其特征在于,当所述第一线程被允许访问所述执行流水线的循环数目匹配第三预定阈值时,使所述第一计数器递减,并且当所述第二线程被允许访问所述执行流水线的循环数目匹配第四预定阈值时,使所述第二计数器递减。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380060973.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:作业机械、管理系统及管理方法
- 下一篇:在触摸屏装置上显示窗口