[发明专利]一种异构多核线程调度方法、系统及异构多核处理器有效
申请号: | 201310206533.0 | 申请日: | 2013-05-29 |
公开(公告)号: | CN103294550A | 公开(公告)日: | 2013-09-11 |
发明(设计)人: | 王磊;陈云霁;陈天石;陆超;李梦竹 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 祁建国;梁挥 |
地址: | 100190 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多核 线程 调度 方法 系统 处理器 | ||
1.一种异构多核线程调度方法,其特征在于,包括根据程序的动态特征分别为线程和核生成排序列表,并根据排序列表找出线程和核的最优的稳定匹配,根据该稳定匹配进行线程调度。
2.如权利要求1所述的异构多核线程调度方法,其特征在于,线程和核生成排序列表包括生成排序模型,具体包括如下步骤:
(1)选择一理想数据库;
(2)从该数据库中提取程序抽样片段;
(3)将程序抽样片段分别在各个核的模拟器上运行,并得到相应响应,把程序抽样片段及其响应分为训练集和测试集两部分;
(4)选择合适的学习算法训练排序模型;
(5)当排序模型的测试误差满足要求时,训练阶段结束。
3.如权利要求2所述的异构多核线程调度方法,其特征在于,该程序抽样片段包括特征向量,对于线程,输入一个程序抽样片段的该特征向量,输出一个对各个核的排序列表;对于核,输入各个线程程序抽样片段的该特征向量,输出为每个核对各线程的排序列表。
4.如权利要求1所述的异构多核线程调度方法,其特征在于,具体包括如下步骤:
收集线程运行中的各类动态信息,输出为线程的某个程序抽样片段的特征向量;
接收运行在该核的线程的特征向量,并据其为该线程给各个核进行选择一个优先级排序;
为各个核对各个线程进行排序;
接收各个线程和核的排序列表,并找出线程和核的稳定匹配结果;
接收该匹配结果,通过操作系统进行调度,将各个线程分配到相应的核上运行。
5.如权利要求1或4所述的异构多核线程调度方法,其特征在于,该找出线程和核的稳定匹配包括如下步骤:
(1)线程按照其优先级排序由高到低向核提出匹配请求,如果核没有匹配对象,则选择接受请求与其形成匹配对;
(2)如果核已经有了匹配对象,则比较新的线程与匹配对象的优先级,如果新线程的优先级高于之前接受的线程,则选择接受新的线程作为匹配对象,如果新线程的优先级低于之前接受的线程,则拒绝新的请求;
(3)被拒绝的线程重新选择排序列表上下一个核提出匹配请求,直到所有的线程和核都已经找到匹配对象。
6.如权利要求1或4所述的异构多核线程调度方法,其特征在于,该找出线程和核的稳定匹配包括采用Gale-Shapley算法。
7.一种异构多核线程调度系统,其特征在于,包括信息采集模块、T排序器、C排序器、匹配器、线程调度器,其中:
信息采集模块,用于收集各个线程运行中的各类动态信息,输出为各个线程的某个程序抽样片段的特征向量;
T排序器,用于接收运行在该核上的线程的特征向量,并据其为该线程给各个核进行选择优先级排序;
C排序器,用于为各个核对各个线程进行排序;
匹配器,用于接收各个线程和各个核的排序列表,并得到线程和核的稳定匹配结果;
线程调度器,接收该匹配结果,通过操作系统进行调度,将各个线程分配到相应的核上运行。
8.一种采用权利要求1-6任何一项方法的异构多核处理器。
9.一种包括权利要求8的异构多核处理器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310206533.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种控制终端屏幕的方法和移动终端
- 下一篇:输入法调用方法、调用装置和终端