一种优化数据流架构数据传输延迟的方法及其系统技术方案

技术编号:16427540 阅读:79 留言:0更新日期:2017-10-21 21:55
本发明专利技术提供一种优化数据流架构数据传输延迟的方法及其系统,其中所述方法包括以下步骤:S1:记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;S2:若所述下游节点可以向所述上游节点提前发射空闲状态信息,则将节点中的指令槽数据存储到预判发射部件中;所述指令槽数据中包含跳数延迟字段,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;S3:根据所述跳数延迟字段,下游节点在X个周期之后向上游节点发送存储在所述预判发射部件中的指令槽数据。

Method and system for optimizing data flow architecture data transmission delay

The invention provides a method of data transmission delay of the flow structure of an optimized data and a system thereof, wherein the method comprises the following steps: S1: historical behavior records for each instruction slots corresponding to the downstream and upstream node, and according to the historical behavior of the downstream node can predict the upstream to the node in advance of the launch of free information; S2: if the downstream node can upstream to the node in advance of the launch of free information, the data stored in the node instruction slots to predict emission components; the data contained in the instruction slots hop delay field, is used to represent the original operating number of the target operating upstream node and downstream node at the most soon the number of hops required X; S3: according to the number of hops delay field, the downstream node after X cycles to send upstream storage nodes in the pre launch part in the Command slot data.

【技术实现步骤摘要】
一种优化数据流架构数据传输延迟的方法及其系统
本专利技术涉及数据传输
,特别涉及一种降低数据传输延迟的方法及其系统。
技术介绍
随着计算机体系结构的发展,领域专用的计算机体系结构成为主要发展趋势。在面向特定应用时,专用型结构利用应用特征对结构进行相应的优化,从而更好地发挥出硬件的计算性能。在高性能计算领域,数据流计算是领域专用计算结构的一个重要分支,数据流计算表现出了较好的性能和适用性。数据流指令执行的基本原则是:所有的源操作数都准备好了,并且下游节点有空闲的数据槽可以接收数据,则该指令即可发射到执行单元当中运算执行。在数据流计算模式中,源指令(生产者,上游节点)执行的结果不会写入共享寄存器或共享缓存,而是直接传递给目的指令(消费者,下游节点)。在传统数据流架构当中,指令之间的数据传递方式如图1所示。在这个例子当中,上游节点PE3106当中的指令槽109的目的操作数字段111要传递给下游节点PE9101的指令槽102的源操作数字段110,并且假定上游节点PE3106的指令槽109当中的源操作数都已经“Ready”。需要经历的正常步骤如下:步骤101:下游节点PE9101的指令槽102被选择进入到发射队列Fire104当中,然后接着就可以进入执行单元执行;步骤102:下游节点PE9101的指令槽102的源操作数字段110依赖于上游节点106的指令槽109的目标操作数字段111,指令槽102发射之后,通过网络105通知上游节点106的指令槽109的目标操作数字段111,下游已经“Ready”,可以接收上游节点发送的源操作数数据;步骤103:上游节点PE3106收到来自下游节点101的“Ready”信息,因为指令槽109的源操作数早已经“Ready”,所以可以进入到发射队列112当中,然后就可以进入到执行单元116当中执行;步骤104:上游节点PE3106的指令槽109当中的指令在执行单元116当中执行结束之后,通过网络117把计算结果发送给下游节点PE9101的指令槽102的源操作数字段110。从时间轴118可以看出,最差情况下,上面描述的这些步骤是完全串行的,一环扣一环。使得节点之间传递操作数的延迟较大、效率较低。
技术实现思路
针对传统数据流结构当中这种依赖于下游节点反馈“Ready”状态位的数据传递机制,本专利技术的目的在于提供一种优化和降低指令之间数据传输延迟的方法及其系统。为达上述目的,本专利技术采取的技术方案为:一种优化数据流架构数据传输延迟的方法,包括以下步骤:S1:记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;S2:若所述下游节点可以向所述上游节点提前发射空闲状态信息,则将节点中的指令槽数据存储到预判发射部件中;所述指令槽数据中包含跳数延迟字段,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;S3:根据所述跳数延迟字段,下游节点在X个周期之后向上游节点发送存储在所述预判发射部件中的指令槽数据。根据本专利技术提出的优化数据流架构数据传输延迟的方法,所述预判发射部件的内部设置存储深度N,采用先进先出结构存取数据。根据本专利技术提出的优化数据流架构数据传输延迟的方法,所述跳数延迟字段是通过节点的坐标静态计算而产生的。本专利技术还同时提供一种优化数据流架构数据传输延迟的系统,包括:预测位,分布在节点的每个指令槽数据中,用于记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;跳数延迟字段,分布在节点的每个指令槽数据中,与所述预判发射部件相连,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;预判发射部件,与所述预测位和所述跳数延迟字段相连,用于当所述预测位预测所述下游节点可以向所述上游节点提前发射空闲状态信息时,存储所述指令槽数据;并在X个周期之后发射存储在其中的指令槽数据。根据本专利技术提出的优化数据流架构数据传输延迟的系统,所述预判发射部件的内部设置存储深度N,采用先进先出结构存取数据。根据本专利技术提出的优化数据流架构数据传输延迟的系统,所述预测位采用2bit饱和计数器。根据本专利技术提出的优化数据流架构数据传输延迟的系统,所述跳数延迟字段是通过节点的坐标静态计算而产生的。与现有技术相比,本专利技术提出的方法及其系统能够有效地加快操作数在数据流架构阵列当中的传递效率,降低传输的延迟。附图说明图1为传统数据流架构当中指令之间的数据传递过程图;图2为采用了本专利技术的提前发射方式之后指令之间的数据传递过程图;图3为采用了本专利技术的提前发射方式之后指令之间传递数据的一具体实施例;图4为传统方式和采用了本专利技术的提前发射方式的延迟对比图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提出一套优化和降低指令之间数据传输延迟的方法及其系统,其核心技术在于非推测提前发射(non-speculativelookaheadfiringselection)模式。在本专利技术提出的模式当中,下游节点提前确认指令的发射日程,提前把“Ready”信息通知到上游节点,这样可以让下游的等待发射节点和向上游反馈“Ready”甚至包括上游向下游发送数据的路由时间部分重叠,从而提高了整个执行过程的效率和减低了数据传递的延迟。本专利技术的系统需要从硬件上增加如下的支持:预测、发射的提前确认和预译码机制。如图2所示。节点当中的每个指令槽都需要增加对应的预测位用于记录该指令槽对应的历史行为。如果指令槽当中的指令总是源操作数先准备好,需要等待目标操作数字段的“Ready”的话,那么表示在这个指令槽当中,下游节点反馈的“Ready”是这个指令槽能否发射执行的瓶颈。这种情况对应的预测位的结果为“Taken”,反之如果指令槽能否发射执行的瓶颈不是等待下游节点反馈的“Ready”信息的话,预测位的结果为“Non-Taken”。之所以设置预测位,是需要根据该指令槽对应的历史行为决定它将来的需求。后面会进一步分析为什么这里虽然采用了预测位,但是却并不属于推测执行,而是非推测的(non-speculative)。预测位的具体位数,取决于预测器的精度要求,一般推荐采用2bit饱和计数器,一方面硬件开销小,另一方面预测精度也有一定的保障。节点当中的发射选择策略相比于传统的方式需要做出改进。在传统的数据流结构当中,节点当中的指令槽,如果处于“Readytofire”的状态,也就是源操作数和目标操作数字段都已经“Ready”的状态,那么就等待被选择发射执行即可。在本专利技术当中,需要知道一个指令槽如果处于“Readytofire”的状态,最快几个时钟周期之后可以被发射执行。比如图2所示,针对下游节点PE9201,为了实现这样的功能,在原来传统结构的发射选择部件205的前面增加了预判发射部件PreFireQ204。预判发射部件204内部设置一定的深度N,采用FIFO的结构,先进先出。那些将要本文档来自技高网
...
一种优化数据流架构数据传输延迟的方法及其系统

【技术保护点】
一种优化数据流架构数据传输延迟的方法,其特征在于,包括以下步骤:S1:记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;S2:若所述下游节点可以向所述上游节点提前发射空闲状态信息,则将节点中的指令槽数据存储到预判发射部件中;所述指令槽数据中包含跳数延迟字段,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;S3:根据所述跳数延迟字段,下游节点在X个周期之后向上游节点发送存储在所述预判发射部件中的指令槽数据。

【技术特征摘要】
1.一种优化数据流架构数据传输延迟的方法,其特征在于,包括以下步骤:S1:记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;S2:若所述下游节点可以向所述上游节点提前发射空闲状态信息,则将节点中的指令槽数据存储到预判发射部件中;所述指令槽数据中包含跳数延迟字段,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;S3:根据所述跳数延迟字段,下游节点在X个周期之后向上游节点发送存储在所述预判发射部件中的指令槽数据。2.根据权利要求1所述的优化数据流架构数据传输延迟的方法,其特征在于,所述预判发射部件的内部设置存储深度N,采用先进先出结构存取数据。3.根据权利要求1或2所述的优化数据流架构数据传输延迟的方法,其特征在于,所述跳数延迟字段是通过节点的坐标静态计算而产生的。4.一种优化数据流架构数据传输延迟的系统,其特征在于,包括:预测位,分布在节点...

【专利技术属性】
技术研发人员:冯煜晶谭旭张浩王达孙凝辉
申请(专利权)人:北京中科睿芯科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1