[发明专利]一种推测多线程调度方法及装置有效
申请号: | 201310140726.0 | 申请日: | 2013-04-22 |
公开(公告)号: | CN104111868B | 公开(公告)日: | 2017-08-11 |
发明(设计)人: | 谭玺;韦竹林 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京路浩知识产权代理有限公司11002 | 代理人: | 纪烈超 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种推测多线程调度方法,该方法包括S1.获取推测线程的访存统计数据;S2.基于上述访存统计数据和非统一cache访问结构NUCA参数计算每个推测线程的数据重心位置;S3.根据所述数据重心位置和当前可用核列表调度对推测线程进行调度。通过本发明可以有效降低不同核因片上访问共享Cache差异对推测多线程执行的影响,提高大规模片上多核系统中推测多线程执行的性能。 | ||
搜索关键词: | 一种 推测 多线程 调度 方法 装置 | ||
【主权项】:
一种推测多线程调度方法,其特征在于,该方法包括:获取推测线程的访存统计数据,所述访存统计数据包括目标程序中每个潜在并行区域访存落在NUCA中各个并行访问缓存阵列的次数和整个目标程序访存落在各个并行访问缓存阵列上的次数;基于上述访存统计数据,根据NUCA系统中共享缓存的结构特点和每个并行访问缓存阵列的时延参数,计算每个推测线程的数据重心位置,所述数据重心位置为推测线程访问各个并行访问缓存阵列所经过的最大链路数;根据每个推测线程的数据重心位置计算每个核到各个推测线程数据重心位置的距离,按照距离大小对所有核进行排序,并将推测线程调度到当前可用的距离所述数据重心位置最小的核中;其中,利用下述公式计算每个推测线程的数据重心位置:CDG=Max{Σi=0n-1MA(k)*Dist(k,i)},k=0,...,n-1]]>Dist(k,i)=llink*(abs(kx‑ix)+abs(ky‑iy))其中,Max{}表示取最大值函数,n为cache bank数,CDG为数据重心,即0到n‑1之间的整数,MA(k)为推测线程对第k个cache bank的访问次数,llink为相邻cache bank之间的链路时延,Dist(k,i)为第k个cache bank和第i个cache bank之间的链路数,kx,ky,ix,iy分别为第k个cache bank和第i个cache bank在片上的x‑y坐标值。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310140726.0/,转载请声明来源钻瓜专利网。
- 上一篇:一种管理型智能通信网关装置
- 下一篇:半导体结构、电极结构及其形成方法