【技术实现步骤摘要】
数组计算方法、装置、设备、介质和计算机程序产品
[0001]本申请涉及计算机
,特别是涉及一种数组计算方法、装置、设备、介质和计算机程序产品。
技术介绍
[0002]在GPU计算平台中,经常出现一个数组的计算需要依赖另一个数组的计算结果的情况,一般情况下,可以将这两个数组称为“具有依赖关系的数组”,对于具有依赖关系的两个数组而言,若对其并行计算,就有可能出现读写冲突的情况,也即是,被依赖的数组还没有完成计算时就被读取,用来对依赖的数组进行计算,出现读写冲突会导致计算错误。
[0003]相关技术中,为了避免读写冲突,在对具有依赖关系的数组进行计算时,一般可以创建两个核函数,在由一个核函数对被依赖的数组计算完毕之后,接着,由另一个核函数基于被依赖数组的计算结果对依赖的数组进行计算。
[0004]然而,相关技术提供的方式计算时延较长。
技术实现思路
[0005]基于此,有必要针对上述技术问题,提供一种能够降低计算时延的数组计算方法、装置、设备、介质和计算机程序产品。
[0006]第一方 ...
【技术保护点】
【技术特征摘要】
1.一种数组计算方法,其特征在于,用于GPU计算平台中,所述方法包括:调用目标核函数,所述目标核函数定义有目标本地变量,所述目标本地变量指向第一数组的计算结果,所述目标核函数用于对第二数组进行计算,所述第二数组的计算依赖于所述第一数组的计算结果;通过所述目标核函数调用预先创建的目标设备函数,以由所述目标设备函数对所述第一数组进行计算,得到所述第一数组的计算结果;在运行所述目标核函数的过程中,读取所述目标本地变量所指向的所述第一数组的计算结果,以由所述目标核函数基于所述第一数组的计算结果对所述第二数组进行计算。2.根据权利要求1所述的方法,其特征在于,所述通过所述目标核函数调用预先创建的目标设备函数,以由所述目标设备函数对所述第一数组进行计算,得到所述第一数组的计算结果之后,所述方法还包括:将所述第一数组的计算结果存储于所述目标本地变量对应的线程寄存器;对应地,所述读取所述目标本地变量所指向的所述第一数组的计算结果,包括:从所述目标本地变量对应的线程寄存器中读取所述第一数组的计算结果。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:在对所述第二数组进行计算之前,所述目标核函数从内存中读取所述第二数组;在对所述第二数组计算之后,所述目标核函数将所述第二数组的计算结果存储至内存中。4.根据权利要求1所述的方法,其特征在于,所述目标核函数定义有多个所述目标本地变量,各所述目标本地变量指向所述第一数组的不同元素的计算结果。5.根...
【专利技术属性】
技术研发人员:朱鹏飞,赵源,梁智,
申请(专利权)人:曙光信息产业北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。