[发明专利]一种基于ARM平台加速数据库哈希操作的方法在审
申请号: | 202211660181.1 | 申请日: | 2022-12-23 |
公开(公告)号: | CN115934725A | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 周宽;陈浩 | 申请(专利权)人: | 湖南大学 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2453;G06F16/2455 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 410082 湖南省*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 arm 平台 加速 数据库 操作 方法 | ||
1.一种基于ARM平台加速数据库哈希操作的方法,其特征在于,实施步骤为:
(1)根据现有的线性检测法的哈希查询标量算法,通过矢量化改造,实现基于SIMD技术的哈希查询算法;
(2)根据现有的线性检测法的哈希建表标量算法,实现基于SIMD技术的哈希建表算法;
(3)根据现有的AvxToNeon库,扩展生成自定义ATN转换模块,实现从AVX指令集和SSE指令集到Neon指令集的转换;
(4)通过快捷的转换过程,将上述基于AVX指令集和SSE指令集的哈希查询和哈希建表算法,转换为基于Neon指令集的ARM架构算法。
2.根据权利要求1所述的方法,其特征在于,所述的实现基于SIMD技术的哈希查询算法具体内容为:
(1)矢量位掩码通道的数量,需要根据具体的业务场景确定,且需要在算法开始之前进行确定;
(2)需要先定义6项允许在算法中使用的基本操作。具体指的是,矢量加载、矢量存储、聚集、散射、选择性加载、选择性分散。后续算法基于6项基本操作完成;
(3)哈希查询在查找到哈希表对应位置有元素,且与所匹配元素相等后,需要进行相应记录,但仍然需要继续查找,直到找到空位置才能结束。
3.根据权利要求1所述的方法,其特征在于,所述的实现基于SIMD技术的哈希建表算法具体内容为:
(1)假设矢量通道数量为W,需要提前初始化一个临时矢量赋值为1到W,目的是为后续检测冲突做准备;
(2)在进行哈希建表过程中,需要多进行一次矢量的散射和聚集,目的是检测同一次矢量插入的冲突情况。
4.根据权利要求1所述的方法,其特征在于,扩展生成自定义ATN转换模块,内容如下:
(1)分析AvxToNeon框架库中已有的基础转换函数;
(2)ATN模块其主要扩展了原库中没有涉及到的基础函数的转换,主要包含部分AVX指令集和部分SSE指令集向Neon指令集函数的转换;
(3)ATN模块的主要实现方式是在ARM环境中将AVX和SSE指令集函数视为自定义函数,然后使用Neon的指令集函数进行对应函数的实现;
(4)将实现好的ATN转换函数,统一封装到对应头文件中。
5.根据权利要求1所述的方法,其特征在于,转换过程应包含如下内容:
(1)将在X86上运行正常的矢量的哈希查询和哈希建表程序,导入到ARM平台,通过头文件调用的方式,更改头文件库调用路径;
(2)在编译ARM平台的矢量的哈希查询和哈希建表算法时,使用相应的编译参数进行编译。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南大学,未经湖南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211660181.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种橡胶电缆料颗粒制备方法及其设备
- 下一篇:一种超声换能器及其制备方法