[发明专利]一种紧耦合异构多处理器数据交换缓存的实现方法在审

专利信息
申请号: 201510809896.2 申请日: 2015-11-23
公开(公告)号: CN105354153A 公开(公告)日: 2016-02-24
发明(设计)人: 吴明晖;俞立呈 申请(专利权)人: 浙江大学城市学院
主分类号: G06F12/0806 分类号: G06F12/0806;G06F12/0813
代理公司: 浙江杭州金通专利事务所有限公司 33100 代理人: 赵红英
地址: 310015 浙*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 耦合 异构多 处理器 数据 交换 缓存 实现 方法
【说明书】:

技术领域

发明涉及一种数据交换缓存的实现方法,尤其是涉及一种紧耦合异构多处理器数据交换缓存的实现方法。

背景技术

紧耦合异构多处理器架构中各个异构处理器核心通过片上互联相互连接,并共享内存,通常也共享最后一级缓存。典型的架构如CPU和GPU通过第三级缓存相连,并在共享的内存中进行数据交换。但是传统的由内存存储,缓存加速的数据交换方式并不适合在处理器间进行细粒度、大规模的临时数据传输。由于这些临时数据仅仅作为处理器间计算的中间结果,存入内存将带来不必要的访存带宽开销和空间占用。

另一方面,当传输的单个数据元素大小超过一次访存请求所支持的大小时,这个元素需要被划分为小块多次访问。然而异构处理器的访存模式差别很大,例如CPU中每个线程独立发送各自的访存请求,而GPU中以单指令多数据的方式执行的一批线程会同时发送多个访存请求,这些请求若访问相邻的地址则会被融合成单个请求以降低访存系统的负担。不同的处理器访问内存时,最适合的数据布局不同,因此传统的共享内存方式进行数据交换无法达到在各个不同的访存模式下都能有最佳的访问效率。并且由于不同处理器的访存模式不同,由各处理器上执行的代码分别管理共享内存空间也比较困难。

发明内容

为了解决背景技术中存在的问题,本发明所要解决的技术问题在于提供一种紧耦合异构多处理器数据交换缓存的实现方法。

本发明所采用的技术方案是:

一种紧耦合异构多处理器数据交换缓存的实现方法,其特征在于包括以下步骤:

1.1)处理器间数据交换单元为元素,每个元素划分为多个固定长度的原子;

1.2)采用核间共享的最后一级缓存的部分空间存储交换中的元素;1.3)各原子以任意数量、任意顺序在处理器和最后一级缓存间传输;1.4)并由最后一级缓存控制器维护各元素原子间存储顺序和空间。

其中步骤1.1)进一步包括:原子的长度固定为各个处理器的自然字长中的最小值,按照各原子在一个元素中的顺序对原子递增编号。

其中步骤1.2)进一步包括:

3.1)交换空间的大小根据应用需求任意分配,关闭所分配的这部分空间原缓存控制逻辑;

3.2)原缓存存储组织中每一缓存行存储属于不同元素的同一编号的原子;

3.3)连续的缓存行存储这些缓存行中元素的连续编号的原子,组成一批完整元素的所有缓存行称为元素块,一个所述的元素块的大小为一个缓存行的大小乘以每个元素的原子数。

其中步骤1.3)进一步包括:

4.1)使用所述的缓存交换数据时,各处理器根据执行的线程宽度决定每次访问的元素数量;

4.2)首先发送读或写预约请求检查缓存中是否有足够的空闲空间或足够的元素可满足本次访问所需的元素数量,若不满足则预约请求失败并重试直到成功,若预约请求成功,处理器从请求响应中得到即将访问的元素地址,所述的元素地址包括本次请求访问的第一个元素所在缓存行地址和这个元素在这个缓存行内的偏移量;

4.3)处理器在预约请求成功后以任意的顺序发出此元素中每个原子的访问请求,每个原子的访问请求中给出所述的元素地址、元素数量和此请求访问的原子序号。

其中步骤1.4)进一步包括:

5.1)最后一级缓存控制器在缓存中存储额外的流队列,其中每个流与一个所述的元素块对应,用于记录元素块的已预约写入元素数、已预约读取元素数、写入的原子总数和读取的原子数总数;

5.2)所述的预约读请求从流队列头部开始处理,所述的预约写请求从流队列尾部开始处理,最后一级缓存控制器使用一个部分读指针指向下一个预约读将检查的流,初始时缓存为空,队头、队尾和所述的部分读指针指向同一个位置;

5.3)最后一级缓存控制器接收到所述的预约写请求时,检查队尾是否有足够的空间可写,并发送预约结果给处理器;

5.4)最后一级缓存控制器接收到所述的预约读请求时,检查部分读指针指向的流是否有足够的元素可读,并发送预约结果给处理器;

5.5)最后一级缓存控制器接收到所述的原子的访问请求时,根据请求中的元素地址和原子序号计算此请求访问的所有原子地址,并访问相应的原子的数据;

5.6)最后一级缓存控制器释放已被读完的元素块及相应的流。

其中步骤5.3)进一步包括:

6.1)检查流队列队尾的流的已预约写入元素数,当剩余可写元素数不足时尝试从队尾后获取一个新的流,若当前流剩余足够的可写元素或申请新的流成功则预约成功,否则预约失败;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学城市学院,未经浙江大学城市学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510809896.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top