GPU写请求数据的延迟控制方法、装置以及云计算系统与流程

文档序号:12786297阅读:来源:国知局

技术特征:

1.一种图形处理器GPU写请求数据的延迟控制方法,其特征在于,包括:

接收到对于GPU内存的写请求数据;

在主机侧对所述写请求数据进行缓存;

计算所述GPU的延迟请求时间;

当到达延迟发送时间点时,将在所述延迟请求时间内与所述GPU对应的写请求数据进行合并处理,并写入所述GPU的内存。

2.如权利要求1所述的方法,其特征在于,所述接收到对于GPU内存的写请求数据、在主机侧对所述写请求数据进行缓存包括:

设置多个请求队列;其中,所述多个请求队列与多个GPU为一一对应设置;

接收到应用程序的写请求数据,确定此写请求数据请求写入的目的GPU,将此写请求数据放入与所述目的GPU相对应的请求队列中。

3.如权利要求2所述的方法,其特征在于,所述计算所述GPU的延迟请求时间包括:

获取各个GPU的资源使用数据,基于所述资源使用数据计算此GPU的空闲内存;其中,所述资源使用数据包括:GPU的流处理器的实时利用率、内存空闲率;

计算GPU的延迟系数以及主机侧对GPU的延迟请求时间。

4.如权利要求3所述的方法,其特征在于:

计算GPU的空闲内存的公式为:

Mi=M*ui

其中,Mi为第i个GPU的空闲内存,M为第i个GPU的固定内存,ui为第i个GPU的内存空闲率。

5.如权利要求4所述的方法,其特征在于:

计算GPU的延迟系数的公式为:

<mrow> <msub> <mi>d</mi> <mi>i</mi> </msub> <mo>=</mo> <mfrac> <msub> <mi>G</mi> <mi>i</mi> </msub> <mrow> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>j</mi> <mo>=</mo> <mi>n</mi> </mrow> </msubsup> <msub> <mi>G</mi> <mi>j</mi> </msub> </mrow> </mfrac> <mo>;</mo> </mrow>

计算主机侧对GPU的延迟请求时间的公式为:

Ti=di*T;

其中,di为第i个GPU的延迟系数,Ti为第i个GPU的延迟请求时间,Gi为第i个GPU的流处理器的实时利用率,T为常量,Gj为第j个GPU的流处理器的实时利用率,n为所述多个GPU的数量,i,j为自然数。

6.如权利要求5所述的方法,其特征在于,所述当到达延迟发送时间点时、将在所述延迟请求时间内与所述GPU对应的写请求数据进行合并处理、并写入所述GPU的内存包括:

根据各个GPU的延迟请求时间进行排序;

当到达一个GPU的延迟发送时间点时,将与此GPU对应的请求队列中在所述延迟请求时间内的写请求数据进行合并,形成请求写入数据,并将所述请求写入数据写入此GPU内存。

7.如权利要求6所述的方法,其特征在于,包括:

判断所述请求写入数据是否大于其对应的GPU的空闲内存,如果是,则将所述请求写入数据超出其对应的GPU的空闲内存的数据保留在请求队列中。

8.一种GPU写请求数据的延迟控制装置,其特征在于,包括:

数据缓存模块,用于接收到对于GPU内存的写请求数据,在主机侧对所述写请求数据进行缓存;

延迟计算模块,用于计算所述GPU的延迟请求时间;

数据合并模块,用于当到达延迟发送时间点时,将在所述延迟请求时间内与所述GPU对应的写请求数据进行合并处理,并写入所述GPU的内存。

9.如权利要求8所述的装置,其特征在于:

所述数据缓存模块,还用于设置多个请求队列;其中,所述多个请求队列与多个GPU为一一对应设置;接收到应用程序的写请求数据,确定此写请求数据请求写入的目的GPU,将此写请求数据放入与所述目的GPU相对应的请求队列中。

10.如权利要求8或9所述的装置,其特征在于:

所述延迟计算模块,用于获取各个GPU的资源使用数据,基于所述资源使用数据计算此GPU的空闲内存;其中,所述资源使用数据包括:GPU的流处理器的实时利用率、内存空闲率;计算GPU的延迟系数以及主机侧对GPU的延迟请求时间。

11.如权利要求10所述的装置,其特征在于:

所述延迟计算模块计算GPU的空闲内存的公式为:

Mi=M*ui

其中,Mi为第i个GPU的空闲内存,M为第i个GPU的固定内存,ui为第i个GPU的内存空闲率。

12.如权利要求11所述的装置,其特征在于:

所述延迟计算模块计算GPU的延迟系数的公式为:

<mrow> <msub> <mi>d</mi> <mi>i</mi> </msub> <mo>=</mo> <mfrac> <msub> <mi>G</mi> <mi>i</mi> </msub> <mrow> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>j</mi> <mo>=</mo> <mi>n</mi> </mrow> </msubsup> <msub> <mi>G</mi> <mi>j</mi> </msub> </mrow> </mfrac> <mo>;</mo> </mrow>

所述延迟计算模块计算主机侧对GPU的延迟请求时间的公式为:

Ti=di*T;

其中,di为第i个GPU的延迟系数,Ti为第i个GPU的延迟请求 时间,Gi为第i个GPU的流处理器的实时利用率,T为常量,Gj为第j个GPU的流处理器的实时利用率,n为所述多个GPU的数量,i,j为自然数。

13.如权利要求12所述的装置,其特征在于:

所述数据合并模块,用于根据各个GPU的延迟请求时间进行排序;当到达一个GPU的延迟发送时间点时,将与此GPU对应的请求队列中在所述延迟请求时间内的写请求数据进行合并,形成请求写入数据,并将所述请求写入数据写入此GPU内存。

14.如权利要求13所述的装置,其特征在于,包括:

所述数据合并模块,用于判断所述请求写入数据是否大于其对应的GPU的空闲内存,如果是,则将所述请求写入数据超出其对应的GPU的空闲内存的数据保留在请求队列中。

15.一种云计算系统,其特征在于:

包括如权利要求8至14任意一项所述的GPU写请求数据的延迟控制装置。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1