[发明专利]一种在多核处理器中缓冲数据的方法有效
申请号: | 201310301037.3 | 申请日: | 2013-07-18 |
公开(公告)号: | CN103345451A | 公开(公告)日: | 2013-10-09 |
发明(设计)人: | 毛力 | 申请(专利权)人: | 四川九成信息技术有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京天奇智新知识产权代理有限公司 11340 | 代理人: | 郭霞 |
地址: | 610041 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多核 处理器 缓冲 数据 方法 | ||
技术领域
本发明涉及数据存储领域,尤其涉及一种在多核处理器中缓冲数据的方法,进一步涉及一种在多核处理器中多级缓冲数据的方法。
背景技术
处理器和主存间的速度差距对多核处理器来说是个突出的矛盾,因此必须使用多级缓存缓存来缓解。目前有共享一级缓存的多核处理器、共享二级缓存的多核处理器以及共享主存的多核处理器。通常,多核处理器采用共享二级缓存的多核处理器结构,即每个处理器核心拥有私有的一级缓存,且所有处理器核心共享二级缓存。缓存自身的体系结构设计也直接关系到系统整体性能。但是在多核处理器结构中,共享缓存或独有缓存孰优孰劣、需不需要在一块芯片上建立多级缓存,以及建立几级缓存等等,由于对整个芯片的尺寸、功耗、布局、性能以及运行效率等都有很大的影响,因而这些都是需要认真研究和探讨的问题。另一方面,多级缓存又引发一致性问题。采用何种缓存一致性模型和机制都将对多核处理器整体性能产生重要影响。在传统多处理器系统结构中广泛采用的缓存一致性模型有:顺序一致性模型、弱一致性模型、释放一致性模型等。与之相关的缓存一致性机制主要有总线的侦听协议和基于目录的目录协议。目前的多核处理器系统大多采用基于总线的侦听协议。
多核处理器处理器的各处理器核心执行的程序之间有时需要进行数据共享与同步,因此其硬件结构必须支持核间通信。高效的通信机制是多核处理器处理器高性能的重要保障,目前比较主流的片上高效通信机制有两种,一种是基于总线共享的缓存结构,一种是基于片上的互连结构。总线共享缓存结构是指每个处理器内核拥有共享的二级或三级缓存,用于保存比较常用的数据,并通过连接核心的总线进行通信。这种系统的优点是结构简单,通信速度高,缺点是基于总线的结构可扩展性较差。基于片上互连的结构是指每个处理器核心具有独立的处理单元和缓存,各个处理器核心通过交叉开关或片上网络等方式连接在一起。各个处理器核心间通过消息通信。这种结构的优点是可扩展性好,数据带宽有保证;缺点是硬件结构复杂,且软件改动较大。也许这两者的竞争结果不是互相取代而是互相合作,例如在全局范围采用片上网络而局部采用总线方式,来达到性能与复杂性的平衡。
传统微处理器中,缓存不命中或访存事件都会对处理器的执行效率产生负面影响,而总线接口单元的工作效率会决定此影响的程度。当多个处理器核心同时要求访问内存或多个处理器核心内私有缓存同时出现缓存不命中事件时,BIU对这多个访问请求的仲裁机制以及对外存储访问的转换机制的效率决定了多核处理器系统的整体性能。因此寻找高效的多端口总线接口单元结构,将多核心对主存的单字访问转为更为高效的猝发访问;同时寻找对多核处理器处理器整体效率最佳的一次猝发访问字的数量模型以及高效多端口总线接口单元访问的仲裁机制将是多核处理器处理器研究的重要内容。
在目前的多核处理器系统中,无论是二级缓存还是三级缓存,无论是共享缓存还是私有缓存,其缓存的读取和替换算法都存在算法复杂度高、命中时长过长等技术问题。
另外,现有的二级缓存方式中,共享缓存数据的二级缓存数据通常在私有的一级缓存中都存在备份,如此,当一级缓存中的缓存数据被不同的处理器核心进行更改后,会出现高速缓存的伪共享问题,从而带来需要经常重新加载,增加了访问延迟,使得系统新能下降。
发明内容
为了解决现有的多核处理器系统中缓存的读取和替换算法都存在算法复杂度高、命中时长过长、伪共享等技术问题,本发明提供了一种在多核处理器中缓冲数据的方法,其中所述多核处理器包括多个处理器核心、与所述多个处理器核心形成一一耦合关系的多个专用缓冲存储器、和分别耦合于所述多个处理器核心的一通用缓冲存储器,所述方法包括:
接收并发执行多个线程的指令;
将所述多个线程中的每一个分别独立地分配给所述多个处理器核心,其中多个处理器核心中的每一个最多被分配一个线程;
对于每一个被分配了线程的处理器核心,响应于执行线程期间的缓存请求,将待缓存数据存储到所耦合的专用缓冲存储器中;
当不小于一阈值t的数量的专用缓冲存储器中都存储有同一缓存数据时,将同一缓存数据存储到通用缓冲存储器中。
优选地,其中在将同一缓存数据存储到通用缓冲存储器中之后,清除存储有同一缓存数据的专用缓冲存储器中的同一缓存数据,并释放清除了存储有同一缓存数据的专用缓冲存储器中的同一缓存数据所占用的存储空间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川九成信息技术有限公司,未经四川九成信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310301037.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种不规则保护镜盖生产工艺
- 下一篇:喷枪运载器
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置