[发明专利]多核架构下核间线程迁移的实现方法无效
| 申请号: | 200910157107.6 | 申请日: | 2009-12-22 |
| 公开(公告)号: | CN101751295A | 公开(公告)日: | 2010-06-23 |
| 发明(设计)人: | 陈天洲;乔福明;唐兴盛;张少斌;胡威;胡同森 | 申请(专利权)人: | 浙江大学 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F15/16 |
| 代理公司: | 杭州中成专利事务所有限公司 33212 | 代理人: | 金祺 |
| 地址: | 310027 浙*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 多核 架构 下核间 线程 迁移 实现 方法 | ||
1.一种多核架构下核间线程迁移的实现方法,包括以下步骤:
(1)对Cache数据块进行分割:
将每个Cache数据块划分为k个相等的等份div,每个等份div的大小为n,假设 Cache数据块的大小为c,则c=nk;
(2)设置故障映射表和同伴映射表:
每个Cache数据块设置一个故障映射表和一个同伴位b,故障映射表用来表示Cache 数据块的各个等份div是否可以用来存储数据,同伴位b表示该Cache数据块是否存在 同伴块;在一个Cache组内如果存在一个Cache数据块的故障映射与另一个Cache数据 块的故障映射异或结果都为0,那么这两个Cache数据块就存在着同伴关系,即另一个 Cache数据块是这个Cache数据块的同伴块;
设置一个所有核共享的同伴块判断器,用来判断同伴位b是否为0;
每个Cache组set设置一个搜索器和一个同伴映射表,搜索器用来确定同伴块的位 置,同伴映射表用来确定该Cache数据块同伴块的位置;如果在Cache组set内存在一 个有故障的Cache数据块与另一个有故障的Cache配对,形成一个可以用来存储信息的 Cache数据块,则这两个有故障的Cache数据块交换其索引;
(3)为了减少存储器访问延时,需要进行核间线程迁移,其实施过程主要分为以下 几个步骤:
迁移核是指线程要被迁移的那个核,访问核是指访问线程的那个核;
第一步:同伴块判断器判断被迁移核中所要迁移的Cache数据块的同伴位b是否为 0,如果为0,转入步骤二;如果为1,则转入步骤五;
第二步:同伴块判断器判断访问核中要替换出去的Cache数据块的同伴位b是否为 0,如果为0,转入步骤三;如果为1,转入步骤四;
第三步:线程迁移控制器直接迁移Cache数据块到访问核驱出的Cache数据块位置 上,同时把从访问核中驱出的Cache数据块填充到迁移核Cache数据块被迁移出的位置;
第四步:首先Cache组set中的搜索器利用访问核Cache数据块的同伴索引确定其 同伴块的位置,线程迁移控制器根据访问核驱出的Cache数据块的故障映射和同伴映射, 迁移Cache数据块到访问核驱出的两个Cache数据块中的有效位置上,再把从访问核中 驱出的两个Cache数据块中有效的数据填充到迁移核Cache数据块被迁移出的位置;
第五步:首先该Cache组set中的搜索器根据迁移核Cache数据块的同伴索引,确 定其同伴块的位置,同时同伴块判断器判断访问核中要替换出去的Cache数据块的同伴 位b,如果b=0,线程迁移控制器将两个Cache数据块中有效的数据迁移到访问核,再根 据迁移核被迁移出的两个Cache数据块的故障映射和同伴映射,把从访问核中驱出的 Cache数据块填充到迁移核被迁移出的两个Cache数据块位置上;如果b=1,线程迁移控 制器将两个Cache数据块中有效的数据迁移到访问核中两个Cache数据块中有效的位置 上,再把从访问核中驱出的两个Cache数据块中有效的数据填充到迁移核被迁移出的两 个Cache数据块位置上;
以上实施的五个步骤是循环进行的,完成所有的Cache数据块被迁移到访问核,以 实现整个线程的迁移。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910157107.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:膳食饮用植物纤维茶及其制备方法
- 下一篇:电梯轿厢的顶棚结构





