[发明专利]用于多核处理器的Cache的主动复制方法及系统有效
| 申请号: | 201010615029.2 | 申请日: | 2010-12-21 |
| 公开(公告)号: | CN102117262A | 公开(公告)日: | 2011-07-06 |
| 发明(设计)人: | 王惊雷;汪东升 | 申请(专利权)人: | 清华大学 |
| 主分类号: | G06F15/167 | 分类号: | G06F15/167;G06F12/08;H04L29/08 |
| 代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
| 地址: | 100084 北京市海*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 多核 处理器 cache 主动 复制 方法 系统 | ||
技术领域
本发明涉及Cache(高速缓冲存储器)技术领域,尤其涉及一种用于多核处理器的Cache的主动复制方法及系统。
背景技术
多核处理器最后一级Cache(L2 Cache)通常采用分布式设计,呈现一种非一致性访问(Non-Uniform CacheAccess,NUCA)的特点,处理器对L2 Cache的访问延迟取决于处理器核与各个L2 Cache之间的物理距离。L2 Cache有两种组织方式:私有L2 Cache设计和共享L2Cache设计。私有L2 Cache设计是处理器核把本地的L2 Cache作为私有Cache使用,以获得更多的本地访问,降低访问延迟。共享L2 Cache设计则是通过地址交叉的方式,把数据分布到各个L2 Cache中。私有L2 Cache设计中存在大量的重复数据,降低了L2 Cache的有效容量,会导致更多的片外存储器访问。共享L2 Cache设计中没有重复的数据,可以充分利用片上Cache来保存尽可能多的数据,减少片外存储器访问,但数据的随机分布导致了大量对远程L2 Cache的访问。一方面,随着多核处理器规模的增长以及应用程序对大数据集的需求,需要L2 Cache为片上处理器核提供更多的数据;另一方面,多核处理器规模的增长也使处理器核与L2 Cache之间的访问延迟越来越大。单纯的私有L2 Cache设计或单纯的共享L2 Cache设计已无法满足大规模多核处理器的应用需求。
混合L2 Cache设计结合了私有L2 Cache设计低延迟与共享L2Cache设计大容量的特点。虽然在L2 Cache中可以混合安排私有L2Cache和共享L2 Cache,以达到混合L2 Cache设计的目的,但是这种方法的适应性和扩展性都比较差。与这种方案相比,以共享L2 Cache设计为基础的复制和迁移机制则具有很好的适应性和扩展性,是混合L2 Cache设计中经常使用的方法。复制是把数据块复制到请求者节点的本地L2 Cache中,宿主节点的L2 Cache中还保留该数据的副本,L2Cache中存在多个副本。迁移则是把数据迁移到请求者节点附近的L2Cache中,宿主节点只保留迁移数据的目的节点信息,不保留该数据的副本,L2 Cache中只有唯一的副本。复制和迁移机制能够根据应用程序的需要把数据放置在距离使用者更近的位置,降低L2 Cache的访问延迟,既使L2 Cache的容量接近共享L2 Cache的容量,又使访问延迟接近私有L2 Cache的访问延迟。
目前多核处理器中采用的复制和迁移机制大都是被动的。例如当数据从私有Cache替换时,把它复制到本地的L2 Cache中,或者把远程数据逐步迁移到请求者节点附近的L2 Cache中。这些复制和迁移机制大都是基于对Cache访问的分类,对不同类型的Cache访问采用不同的策略,如对只读数据采用复制策略,对读写数据采用迁移策略。这些被动复制和迁移机制存在以下问题:
1、基于本地的决策,没有考虑数据的共享模式,具有一定的盲目性,副本的冗余度大,分布不合理;
2、复制的副本只能被本地使用,利用率低;
3、多方向迁移造成数据聚集和性能下降;
4、不精确的分类方法带来的额外的一致性问题和额外的开销;
5、回避对读写数据的复制和迁移;
6、对复制和迁移数据的查找复杂、耗时。
发明内容
(一)要解决的技术问题
本发明所要解决的技术问题是:如何提高副本利用率,减少副本的冗余,合理分布副本,以及避免多方向迁移引起的数据聚集,从而降低系统访问延迟,扩大系统容量。
(二)技术方案
未解决上述问题,本发明提供了一种用于多核处理器的Cache的主动复制方法,该方法包括步骤:
S1.宿主节点实时分析访问该节点共享L2 Cache中使用数据块的处理器核的位置和访问次数,动态地确定复制副本的位置及其分布,根据设定的副本间距从访问该数据块的处理器核中选取一个或多个候选副本节点;
S2.若所述数据块被访问的次数达到设定的复制阈值,则宿主节点将所述数据块复制到步骤S1所选取的候选副本节点中,并在迁移表中记录副本的位置;
S3.若宿主节点接收到对已复制数据块的读请求,则将所述读请求转发至离该请求节点最近的副本节点,所述副本节点接收到所述读请求后,向所述请求节点回应所述数据块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010615029.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:环境友好型水溶性涂料用含氟丙烯酸酯流平剂
- 下一篇:光学触控显示装置





