应用于GPU的函数计算系统、方法和装置制造方法及图纸

技术编号:37237479 阅读:19 留言:0更新日期:2023-04-20 23:19
本申请涉及一种应用于GPU的函数计算系统、方法和装置。所述系统包括:输入单元,存储器以及特殊函数处理单元;输入单元,用于获取待计算数据,以及计算函数标识,发送至特殊函数处理单元;存储器,用于存储各个函数类型匹配的系数存储表格;特殊函数处理单元,用于获取待计算数据对应的目标表格查询索引,并获取目标系数存储表格,从目标系数存储表格中,获取与目标表格查询索引对应的预设个数的目标泰勒展开系数;还用于基于待计算数据,以及预设个数的目标泰勒展开系数,得到待计算数据对应的函数计算结果。采用本系统能够通过查表的方式来得到目标泰勒展开系数,从而减少了运算量,提高了运算效率。提高了运算效率。提高了运算效率。

【技术实现步骤摘要】
应用于GPU的函数计算系统、方法和装置


[0001]本申请涉及计算机
,特别是涉及一种应用于GPU的函数计算系统、方法和装置。

技术介绍

[0002]随着计算机技术的发展,出现了一种用于处理各种绘制计算机图形所需的运算的图形处理器GPU,用户可以通过在GPU上编写着色程序,来实现图形的渲染。在着色程序中,往往需要执行某些特殊函数的运算,例如倒数、指数、开平方、三角函数等,上述特殊函数如果完全通过硬件来实现,则需要复杂的硬件逻辑,无法在GPU上适用。
[0003]传统技术中,针对特殊函数的运算,通常是利用泰勒公式来实现,将特殊函数通过泰勒公式展开为乘加运算。目前利用泰勒公式进行特殊函数的运算,通常是使用一系列的乘加指令来实现泰勒公式,或者直接使用硬件执行泰勒公式。
[0004]然而,使用一系列的乘加指令来实现泰勒公式的方法计算量较大,会影响着色程序的执行效率,而如果直接使用硬件执行泰勒公式,则硬件模块的硬件实现较为复杂,不适于在GPU中实现,因此现有在GPU中进行的特殊函数运算,运算效率较低。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够提高特殊函数运算效率的应用于GPU的函数计算系统、方法和装置。
[0006]第一方面,本申请提供了一种应用于GPU的函数计算系统,所述系统包括:输入单元,存储器以及特殊函数处理单元;其中,
[0007]所述输入单元,用于获取待计算数据,以及所述待计算数据对应的计算函数标识,并在所述计算函数标识对应的目标函数类型为预设类型的情况下,将所述待计算数据以及所述计算函数标识发送至所述特殊函数处理单元;
[0008]所述存储器,用于存储各个函数类型匹配的系数存储表格,所述系数存储表格中存储有各个表格查询索引分别对应的预设个数的泰勒展开系数;
[0009]所述特殊函数处理单元,用于获取所述待计算数据对应的目标表格查询索引,并从所述存储器存储的系数存储表格中,获取所述计算函数标识对应的目标函数类型匹配的目标系数存储表格,从所述目标系数存储表格中,获取与所述目标表格查询索引对应的预设个数的目标泰勒展开系数;
[0010]所述特殊函数处理单元,还用于基于所述待计算数据,以及所述预设个数的目标泰勒展开系数,得到所述待计算数据对应的函数计算结果。
[0011]在其中一个实施例中,所述预设个数的目标泰勒展开系数为3个,分别为第一泰勒展开系数、第二泰勒展开系数以及第三泰勒展开系数;所述待计算数据以多位浮点数的形式表示;所述系数存储表格中存储的各个表格查询索引的位数为预设浮点数位数;所述特殊函数处理单元,进一步用于在所述目标表格查询索引中新添加后一位数值,并将所述新
添加的后一位数值进行置一处理,得到目标比较系数;所述特殊函数处理单元,进一步获取所述待计算数据与所述目标比较系数的差值,并将所述差值作为所述待计算数据对应的第一差值项,以及将所述差值的平方作为所述待计算数据对应的第二差值项;所述特殊函数处理单元,进一步用于将所述第一泰勒展开系数作为所述待计算数据的第一泰勒展开项,将所述第二泰勒展开系数与所述第一差值项的乘积作为第二泰勒展开项,以及将所述第三泰勒展开系数与所述第二差值项的乘积作为第三泰勒展开项,并根据所述第一泰勒展开项、所述第二泰勒展开项以及所述第三泰勒展开项,得到所述待计算数据对应的函数计算结果。
[0012]在其中一个实施例中,所述特殊函数处理单元,包括:乘法器、累加器以及移位逻辑单元;所述特殊函数处理单元,进一步用于通过所述累加器以及所述移位逻辑单元,获取所述待计算数据与所述目标比较系数的差值,以及通过所述乘法器获取所述差值的平方;所述特殊函数处理单元,进一步用于通过所述乘法器将所述第二泰勒展开系数与所述第一差值项相乘,得到所述第二泰勒展开项,以及将所述第三泰勒展开系数与所述第二差值项相乘,得到所述第三泰勒展开项,并通过所述累加器以及所述移位逻辑单元,对所述第一泰勒展开项、所述第二泰勒展开项以及所述第三泰勒展开项进行相加处理,得到所述待计算数据对应的函数计算结果。
[0013]在其中一个实施例中,所述待计算数据以多位浮点数的形式表示;所述系数存储表格中存储的各个表格查询索引的位数为预设浮点数位数;所述特殊函数处理单元,进一步用于获取所述待计算数据位于浮点数尾数域的前所述预设浮点数位数的浮点数值;从所述各个表格查询索引中,获取与所述预设浮点数位数相同的表格查询索引,作为所述目标表格查询索引。
[0014]在其中一个实施例中,所述特殊函数处理单元,还用于获取当前函数类型,以及所述当前函数类型对应的预设个数的泰勒展开系数中,各个泰勒展开系数的计算表达式;在所述各个表格查询索引中新添加后一位数值,并将所述新添加的后一位数值进行置一处理,得到所述各个表格查询索引分别对应的比较系数;利用所述各个泰勒展开系数的计算表达式,分别计算各个比较系数对应的泰勒展开系数,得到所述各个表格查询索引对应的预设个数的泰勒展开系数;将所述各个表格查询索引,以及所述各个表格查询索引对应的预设个数的泰勒展开系数,写入至所述当前函数类型对应的当前系数存储表格,并将所述当前系数存储表格存储入所述存储器。
[0015]在其中一个实施例中,所述特殊函数处理单元,还用于遍历预设浮点数位数的多个取值,形成各个取值分别对应的表格查询索引,得到所述各个表格查询索引。
[0016]在其中一个实施例中,所述特殊函数处理单元,进一步用于检测所述待计算数据是否为预先设定的特殊数值;在所述待计算数据不是所述特殊数值的情况下,获取所述待计算数据对应的目标表格查询索引,并从所述存储器存储的系数存储表格中,获取所述计算函数标识对应的目标函数类型匹配的目标系数存储表格。
[0017]在其中一个实施例中,所述存储器,还用于存储各个函数类型匹配的特殊数值表格,所述特殊数值表格中存储有各个特殊数值分别对应的函数计算结果;所述特殊函数处理单元,还用于在所述待计算数据是所述特殊数值的情况下,从所述存储器存储的特殊数值表格中,获取所述计算函数标识对应的目标函数类型匹配的目标特殊数值表格,并从所
述目标特殊数值表格中,获取与所述待计算数据对应的函数计算结果。
[0018]第二方面,本申请还提供了一种应用于GPU的函数计算方法,应用于特殊函数处理单元,所述方法包括:
[0019]从输入单元接收待计算数据,以及所述待计算数据对应的计算函数标识;
[0020]获取所述待计算数据对应的目标表格查询索引,并从存储器存储的系数存储表格中,获取所述计算函数标识对应的目标函数类型匹配的目标系数存储表格;所述存储器,用于存储各个函数类型匹配的系数存储表格,所述系数存储表格中存储有各个表格查询索引分别对应的预设个数的泰勒展开系数;
[0021]从所述目标系数存储表格中,获取与所述目标表格查询索引对应的预设个数的目标泰勒展开系数;
[0022]基于所述待计算数据,以及所述预设个数的目标泰勒展开系数,得到所述待计算数据对应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用于GPU的函数计算系统,其特征在于,所述系统包括:输入单元,存储器以及特殊函数处理单元;其中,所述输入单元,用于获取待计算数据,以及所述待计算数据对应的计算函数标识,并在所述计算函数标识对应的目标函数类型为预设类型的情况下,将所述待计算数据以及所述计算函数标识发送至所述特殊函数处理单元;所述存储器,用于存储各个函数类型匹配的系数存储表格,所述系数存储表格中存储有各个表格查询索引分别对应的预设个数的泰勒展开系数;所述特殊函数处理单元,用于获取所述待计算数据对应的目标表格查询索引,并从所述存储器存储的系数存储表格中,获取所述计算函数标识对应的目标函数类型匹配的目标系数存储表格,从所述目标系数存储表格中,获取与所述目标表格查询索引对应的预设个数的目标泰勒展开系数;所述特殊函数处理单元,还用于基于所述待计算数据,以及所述预设个数的目标泰勒展开系数,得到所述待计算数据对应的函数计算结果。2.根据权利要求1所述的系统,其特征在于,所述预设个数的目标泰勒展开系数为3个,分别为第一泰勒展开系数、第二泰勒展开系数以及第三泰勒展开系数;所述待计算数据以多位浮点数的形式表示;所述系数存储表格中存储的各个表格查询索引的位数为预设浮点数位数;所述特殊函数处理单元,进一步用于在所述目标表格查询索引中新添加后一位数值,并将所述新添加的后一位数值进行置一处理,得到目标比较系数;所述特殊函数处理单元,进一步获取所述待计算数据与所述目标比较系数的差值,并将所述差值作为所述待计算数据对应的第一差值项,以及将所述差值的平方作为所述待计算数据对应的第二差值项;所述特殊函数处理单元,进一步用于将所述第一泰勒展开系数作为所述待计算数据的第一泰勒展开项,将所述第二泰勒展开系数与所述第一差值项的乘积作为第二泰勒展开项,以及将所述第三泰勒展开系数与所述第二差值项的乘积作为第三泰勒展开项,并根据所述第一泰勒展开项、所述第二泰勒展开项以及所述第三泰勒展开项,得到所述待计算数据对应的函数计算结果。3.根据权利要求2所述的系统,其特征在于,所述特殊函数处理单元,包括:乘法器、累加器以及移位逻辑单元;所述特殊函数处理单元,进一步用于通过所述累加器以及所述移位逻辑单元,获取所述待计算数据与所述目标比较系数的差值,以及通过所述乘法器获取所述差值的平方;所述特殊函数处理单元,进一步用于通过所述乘法器将所述第二泰勒展开系数与所述第一差值项相乘,得到所述第二泰勒展开项,以及将所述第三泰勒展开系数与所述第二差值项相乘,得到所述第三泰勒展开项,并通过所述累加器以及所述移位逻辑单元,对所述第一泰勒展开项、所述第二泰勒展开项以及所述第三泰勒展开项进行相加处理,得到所述待计算数据对应的函数计算结果。4.根据权利要求1所述的系统,其特征在于,所述待计算数据以多位浮点数的形式表示;所述系数存储表格中存储的各个表格查询索引的位数为预设浮点数位数;所述特殊函数处理单元,进一步用于获取所述待计算数据位于浮点数尾数域的前所述
预设浮点数位数的浮点数值;从所述各个表格查询索引中,获取与所述预设浮点数位数相同的表格查询索引,作为所述目标表格查询索引。5.根据权利要求4所述的系统,其特征在于,所述特殊函数处理单...

【专利技术属性】
技术研发人员:张淮声毕艺飞蒋若虹
申请(专利权)人:格兰菲智能科技有限公司
类型:发明
国别省市:

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

1