[发明专利]一种数据处理方法、计算设备及可读存储介质有效
| 申请号: | 202110000639.X | 申请日: | 2021-01-04 |
| 公开(公告)号: | CN112328511B | 公开(公告)日: | 2021-05-04 |
| 发明(设计)人: | 杨堃;刘昌辉 | 申请(专利权)人: | 统信软件技术有限公司 |
| 主分类号: | G06F12/0811 | 分类号: | G06F12/0811;G06F9/50 |
| 代理公司: | 北京瀚方律师事务所 11774 | 代理人: | 周红力 |
| 地址: | 100176 北京市大兴区经*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据处理 方法 计算 设备 可读 存储 介质 | ||
1.一种数据处理方法,适于在计算设备中执行,所述计算设备的内存中按照预定存储结构存储有数值型的数据对象,所述预定存储结构的结构信息包括数据对象的数据起始地址、数据位宽和数据符号,所述数据起始地址为数据对象的绝对值在内存中的起始地址,所述数据对象包括待处理的第一数据对象和第二数据对象,所述方法包括:
获取存储第一数据对象的结构信息的第一起始地址和存储第二数据对象的结构信息的第二起始地址;
根据所述第一起始地址获取所述第一数据对象的数据符号,根据所述第二起始地址获取所述第二数据对象的数据符号;
至少基于所述第一数据对象和所述第二数据对象的数据符号,使用SIMD指令对所述第一数据对象和所述第二数据对象进行运算,所述运算包括比较运算、加法运算、减法运算和乘法运算中至少之一,其中,在进行加法运算、减法运算或乘法运算时,以N位数字为一组进行运算,所述N为计算设备的处理器中向量寄存器的位宽。
2.如权利要求1所述的方法,其中,对第一数据对象和第二数据对象进行比较运算的步骤,包括:
判断所述第一数据对象和所述第二数据对象的数据符号是否相同;
如果所述第一数据对象和所述第二数据对象的数据符号相同,根据所述第一起始地址,获取所述第一数据对象的数据位宽,根据所述第二起始地址,获取所述第二数据对象的数据位宽;
如果所述第一数据对象和所述第二数据对象的数据位宽相同,根据所述第一起始地址,获取所述第一数据对象的数据起始地址,根据所述第二起始地址,获取所述第二数据对象的数据起始地址;
根据所述第一数据对象和所述第二数据对象的数据起始地址,以N位数字为一组,从高位到低位分别依次提取所述第一数据对象的绝对值和所述第二数据对象的绝对值中的数据,每从所述第一数据对象的绝对值和所述第二数据对象的绝对值中提取一组数据,使用SIMD指令进行比较运算,直至获得所述第一数据对象的绝对值和所述第二数据对象的绝对值的比较结果。
3.如权利要求2所述的方法,其中,所述对第一数据对象和第二数据对象进行比较运算的步骤,还包括:
如果所述第一数据对象和所述第二数据对象的数据符号相异,确定所述第一数据对象和所述第二数据对象的大小;
如果所述第一数据对象和所述第二数据对象的数据位宽不同,结合所述第一数据对象和所述第二数据对象的数据符号,确定所述第一数据对象和所述第二数据对象的大小。
4.如权利要求1所述的方法,其中,对第一数据对象和第二数据对象进行加法运算的步骤,包括:
判断所述第一数据对象和所述第二数据对象的数据符号是否相同;
如果所述第一数据对象和所述第二数据对象的数据符号相同,取所述第一数据对象的数据符号作为所述第一数据对象和所述第二数据对象的和的数据符号;
根据所述第一起始地址,获取所述第一数据对象的数据起始地址,根据所述第二起始地址,获取所述第二数据对象的数据起始地址;
根据所述第一数据对象和所述第二数据对象的数据起始地址,以N位数字为一组,从低位到高位分别依次提取所述第一数据对象的绝对值和所述第二数据对象的绝对值中的数据,每从所述第一数据对象的绝对值和所述第二数据对象的绝对值中提取一组数据,使用SIMD指令进行加法运算,直至将所述第一数据对象的绝对值和所述第二数据对象的绝对值相加完成,获得所述第一数据对象的绝对值和所述第二数据对象的绝对值的和;
按照所述预定存储结构将所述第一数据对象和所述第二数据对象的求和结果存储到内存。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于统信软件技术有限公司,未经统信软件技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110000639.X/1.html,转载请声明来源钻瓜专利网。





