一种动态调整数据流架构的资源带宽的计算系统及其方法技术方案

技术编号:17265030 阅读:37 留言:0更新日期:2018-02-14 12:23
本发明专利技术公开一种动态调整数据流架构的资源带宽计算方法及其系统,包括:数据流架构中的指令发射机制,在指令发射逻辑当中增加如下功能:定点运算计数器、浮点运算计数器、带宽调整计数器、带宽预测器,用于计算定点与浮点的指令数,计算带宽调整指令数,并发射相应的指令到运算单元。运算单元,采用组合运算单元,在数据通路上可以做到定点运算和浮点运算的共用,其调整的控制点为指令发射逻辑;可根据指令发射逻辑发射的指令增加定点流水量带宽、减少浮点流水线的带宽或减少定点流水量带宽、增加浮点流水线的带宽,调整带宽分配比例。统计周期,设定粒度N,N为自然数,以N个时钟周期为一个计算小周期。

A computing system and method of resource bandwidth based on dynamically adjusted data flow architecture

Including the method and system, the invention discloses a resource dynamic bandwidth adjustment data stream computing architecture: data flow architecture instruction in emission mechanism are added in the instruction issue logic: fixed-point floating-point counter, counter, counter, adjusting the bandwidth for bandwidth predictor, the number of instructions of fixed-point and floating-point calculation, calculation bandwidth adjustment the number of instructions, and launch the corresponding instruction to the operation unit. The arithmetic unit, using a combination of arithmetic unit in the data path can be shared fixed and floating point operations, the adjustment of the control point for instruction logic; according to the instruction logic instructions increase the volume of water emission point bandwidth and reduce pipeline bandwidth or reduce the amount of water, increase the bandwidth of fixed-point floating-point bandwidth adjust the bandwidth allocation ratio. Statistical cycle, set the size of N, N as a natural number, N clock cycle as a small period of calculation.

【技术实现步骤摘要】
一种动态调整数据流架构的资源带宽的计算系统及其方法
本专利技术涉及计算机应用
,特别是涉及高性能计算的领域。
技术介绍
随着计算机体系结构的发展,领域专用的计算机体系结构成为主要发展趋势。在面向特定应用时,专用型结构利用应用特征对结构进行相应的优化,从而更好地发挥出硬件的计算性能。在高性能计算领域,数据流计算是领域专用计算结构的一个重要分支,数据流计算表现出了较好的性能和适用性。数据流架构通常都包括若干个或者十几个计算节点,每个计算节点都是运算能力较强但是控制能力较弱、复杂度较小的核心。每个核心当中设置固定个数的运算单元:X个定点运算单元和Y个浮点运算单元,每个定点运算单元对应一条定点运算流水线,每个浮点运算单元对应一条浮点运算流水线。在每个时钟周期,每条流水线都会从所有准备好的指令当中选择一条指令进入到对应的流水线执行。不同的负载应用当中的浮点指令和定点指令的比例都不尽相同,某些负载当中可能浮点指令的比例更大,那么这类负载对浮点运算的带宽需求将更大;而某些负载当中可能定点指令的比例更大,那么这种负载对定点运算的带宽需求将更大。在传统数据流架构当中,任意一个节点内部的指令发射机制如图1所示。在数据流架构的任意一个节点内部,指令队列101用于保存指令的实时的执行信息,指令发射逻辑用于选择指令并且发射到对应的运算单元当中。在图1的例子中,设置了3个运算单元,分别是2个定点运算单元103、104和1个浮点运算单元105。指令发射逻102辑根据指令队列当中每条指令的状态是否准备好,以及每个运算单元是否能够接收并执行新的指令,把指令队列101当中的指令分配到执行单元去执行。定点运算单元103、104当中的执行流水线叫做定点流水线,浮点运算单元105当中的执行流水线叫做浮点流水线。通常定点流水线的长度是1-2个流水级,浮点流水线的长度是4-6个流水级(流水线的级数和具体的实现方式有关系),该例子当中认为定点流水线都是1个流水级,浮点流水线是4个流水级。采用这种传统方式发射指令的话,如果一个应用当中的定点指令的比例较少反之浮点指令较多的话,那么会产生这样的情况:其中一个定点运算单元(比如103或者104)的计算流水线较为空闲,而浮点流水线105的带宽较为紧张。在这种结构下,相当于定点运算带宽和浮点运算带宽的硬件都是固定的,没有任何能够进行调整的余地,而带宽紧张的流水线,其执行效率将有可能成为执行效率的瓶颈。
技术实现思路
本专利技术针对传统设计不能根据实际负载特性调整计算带宽的问题,提出了能够根据负载的特性,动态调整定点和浮点运算的带宽以适应负载的特点,达到最佳的运算性能的方法和系统机制。具体技术方案如下:一种动态调整数据流架构的资源带宽的计算系统,包括:指令发射单元,包括定点运算计数器、浮点运算计数器、带宽统计器和带宽调整计数器;其中所述定点运算计数器用于计算在N个时钟周期中进入定点流水线的有效指令数;所述浮点运算计数器用于计算在N个时钟周期中进入浮点流水线的有效指令数;所述带宽统计器用于统计在过去的多组N个时钟周期内的的历史行为,是定点带宽需求更大还是浮点带宽需求更大;所述带宽调整计数器用于根据所述带宽统计器的数值调整运算单元当中定点计算和浮点计算的执行比例;运算单元,与所述指令发射单元连接,包括定点运算单元、浮点运算单元以及组合运算单元,其中所述组合运算单元在数据通路上用于实现定点运算和浮点运算的共用,其既可以执行定点运算也可以执行浮点运算;所述运算单元根据所述带宽调整计数器的数值来调整定点流水量带宽和浮点流水量带宽的分配比例;其中,N为自然数,代表带宽调整的粒度,以N个时钟周期作为一个计算小周期。根据本专利技术提出的一种动态调整数据流架构的资源带宽的计算系统,其中,在每个所述计算小周期结束的时候,所述定点运算计数器和所述浮点运算计数器分别复位并重新开始从0计数;所述带宽统计器用于统计在过去的Z个所述计算小周期内的历史行为,其中Z为自然数;若定点计算的带宽需求大于浮点计算,所述带宽统计器的数值做饱和加1;若定点计算带宽小于浮点计算带宽,所述带宽统计器的数值做饱和减1;所述带宽调整计数器只有在所述计算小周期结束的时候才会根据所述带宽统计器的数值进行调整,否则执行过程中所述带宽调整计数器的数值不会发生改变,只是作为固定的配置。根据本专利技术提出的一种动态调整数据流架构的资源带宽的计算系统,其中,所述组合运算单元所占用的空间比单独的定点运算单元或者单独的浮点运算单元所占用的空间大。根据本专利技术提出的一种动态调整数据流架构的资源带宽的计算系统,其中,初始状态下所述组合运算单元针对定点计算和浮点计算所分配的带宽是相等的。本专利技术同时还提出了一种动态调整数据流架构的资源带宽的计算方法,包括以下步骤:S1:将运算单元划分为定点运算单元、浮点运算单元以及组合运算单元,所述定点运算单元用于只进行定点运算,所述浮点运算单元用于只进行浮点运算,所述组合运算单元在数据通路上用于实现定点运算和浮点运算的共用,其既可以执行定点运算也可以执行浮点运算;S2:利用定点运算计数器计算在N个时钟周期中进入定点流水线的有效指令数;利用浮点运算计数器计算在N个时钟周期中进入浮点流水线的有效指令数;其中N为自然数,代表带宽调整的粒度,以N个时钟周期作为一个计算小周期;S3:利用带宽统计器统计在过去的多组N个时钟周期内的的历史行为,是定点带宽需求更大还是浮点带宽需求更大;S4:利用带宽调整计数器,根据所述带宽统计器的数值调整所述运算单元当中定点计算和浮点计算的执行比例。根据本专利技术提出的一种动态调整数据流架构的资源带宽的计算方法,其中,所述步骤S2包括:在每个所述计算小周期结束的时候,所述定点运算计数器和所述浮点运算计数器分别复位并重新开始从0计数。根据本专利技术提出的一种动态调整数据流架构的资源带宽的计算方法,其中,所述步骤S3中,带宽统计器用于统计在过去的Z个所述计算小周期内的历史行为,其中Z为自然数;若定点计算的带宽需求大于浮点计算,所述带宽统计器的数值做饱和加1;若定点计算带宽小于浮点计算带宽,所述带宽统计器的数值做饱和减1。根据本专利技术提出的一种动态调整数据流架构的资源带宽的计算方法,其中,所述步骤S4中,所述带宽调整计数器只有在所述计算小周期结束的时候才会根据所述带宽统计器的数值进行调整,否则执行过程中所述带宽调整计数器的数值不会发生改变,只是作为固定的配置。根据本专利技术提出的一种动态调整数据流架构的资源带宽的计算方法,其中,所述组合运算单元所占用的空间比单独的定点运算单元或者单独的浮点运算单元所占用的空间大。根据本专利技术提出的一种动态调整数据流架构的资源带宽的计算方法,其中,所述步骤S1中,初始状态下所述组合运算单元针对定点计算和浮点计算所分配的带宽是相等的。与现有技术相比,本专利技术的有益效果在于:本专利技术提出的动态调整数据流架构的资源带宽计算方法及其系统具有适应各种负载,运算效率高的优点,并且本专利技术中粒度N的设定,可以供软件根据实际情况增加或减少小周期的长度,使使用更为灵活。附图说明图1为传统的数据流架构中指令发射的结构示意图;图2为本专利技术提出的数据流架构中指令发射的结构示意图;图3为带宽预测器的基本工作原理图;图4为本专利技术实施例的执行步骤示意图。附图标记本文档来自技高网
...
一种动态调整数据流架构的资源带宽的计算系统及其方法

【技术保护点】
一种动态调整数据流架构的资源带宽的计算系统,其特征在于,包括:指令发射单元,包括定点运算计数器、浮点运算计数器、带宽统计器和带宽调整计数器;其中所述定点运算计数器用于计算在N个时钟周期中进入定点流水线的有效指令数;所述浮点运算计数器用于计算在N个时钟周期中进入浮点流水线的有效指令数;所述带宽统计器用于统计在过去的多组N个时钟周期内的的历史行为,是定点带宽需求更大还是浮点带宽需求更大;所述带宽调整计数器用于根据所述带宽统计器的数值调整运算单元当中定点计算和浮点计算的执行比例;运算单元,与所述指令发射单元连接,包括定点运算单元、浮点运算单元以及组合运算单元,其中所述组合运算单元在数据通路上用于实现定点运算和浮点运算的共用,其既可以执行定点运算也可以执行浮点运算;所述运算单元根据所述带宽调整计数器的数值来调整定点流水量带宽和浮点流水量带宽的分配比例;其中,N为自然数,代表带宽调整的粒度,以N个时钟周期作为一个计算小周期。

【技术特征摘要】
1.一种动态调整数据流架构的资源带宽的计算系统,其特征在于,包括:指令发射单元,包括定点运算计数器、浮点运算计数器、带宽统计器和带宽调整计数器;其中所述定点运算计数器用于计算在N个时钟周期中进入定点流水线的有效指令数;所述浮点运算计数器用于计算在N个时钟周期中进入浮点流水线的有效指令数;所述带宽统计器用于统计在过去的多组N个时钟周期内的的历史行为,是定点带宽需求更大还是浮点带宽需求更大;所述带宽调整计数器用于根据所述带宽统计器的数值调整运算单元当中定点计算和浮点计算的执行比例;运算单元,与所述指令发射单元连接,包括定点运算单元、浮点运算单元以及组合运算单元,其中所述组合运算单元在数据通路上用于实现定点运算和浮点运算的共用,其既可以执行定点运算也可以执行浮点运算;所述运算单元根据所述带宽调整计数器的数值来调整定点流水量带宽和浮点流水量带宽的分配比例;其中,N为自然数,代表带宽调整的粒度,以N个时钟周期作为一个计算小周期。2.根据权利要求1所述的一种动态调整数据流架构的资源带宽的计算系统,其特征在于,在每个所述计算小周期结束的时候,所述定点运算计数器和所述浮点运算计数器分别复位并重新开始从0计数;带宽统计器用于统计在过去的Z个所述计算小周期内的历史行为,其中Z为自然数;若定点计算的带宽需求大于浮点计算,所述带宽统计器的数值做饱和加1;若定点计算带宽小于浮点计算带宽,所述带宽统计器的数值做饱和减1;所述带宽调整计数器只有在所述计算小周期结束的时候才会根据所述带宽统计器的数值进行调整,否则执行过程中所述带宽调整计数器的数值不会发生改变,只是作为固定的配置。3.根据权利要求1或2所述的一种动态调整数据流架构的资源带宽的计算系统,其特征在于,所述组合运算单元所占用的空间比单独的定点运算单元或者单独的浮点运算单元所占用的空间大。4.根据权利要求3所述的一种动态调整数据流架构的资源带宽的计算系统,其特征在于,初始状态下所述组合运算单元针对定点计算和浮点计算所分配的带宽是相等的。5.一种动态调整数据流架构的资源带宽的计算方法,其特征在于,...

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

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

1