This paper introduces a search algorithm for index structures based on a B+ tree, specifically optimized for execution on a field-programmable gate array (FPGA). Our implementation efficiently traverses and reuses tree nodes by processing a batch of search keys level by level. This approach reduces costly global memory accesses, improves reuse of loaded B+ tree nodes, and enables parallel search key comparisons directly on the FPGA. Using a high-level synthesis (HLS) approach, we developed a highly flexible and configurable search kernel design supporting variable batch sizes, customizable node sizes, and arbitrary tree depths. The final design was implemented on an AMD Alveo U250 Data Center Accelerator Card, and was evaluated against the B+ tree search algorithm from the TLX library running on an AMD EPYC 7542 processor (2.9 GHz). With a batch size of 1000 search keys, a B+ tree containing one million entries, and a tree order of 16, we measured a 4.9x speedup for the single-kernel FPGA design compared to a single-threaded CPU implementation. Running four kernel instances in parallel on the FPGA resulted in a 2.1$\times$ performance improvement over a CPU implementation using 16 threads.


翻译:本文提出一种基于B+树索引结构的搜索算法,该算法针对现场可编程门阵列(FPGA)执行进行了专门优化。我们的实现通过逐层处理一批搜索键,高效遍历并重用树节点。该方法减少了代价高昂的全局内存访问,提升了已加载B+树节点的重用率,并实现了在FPGA上直接对搜索键进行并行比较。采用高层次综合(HLS)方法,我们开发了一个高度灵活且可配置的搜索内核设计,支持可变批量大小、可定制的节点大小及任意树深度。最终设计在AMD Alveo U250数据中心加速卡上实现,并与TLX库中运行于AMD EPYC 7542处理器(2.9 GHz)上的B+树搜索算法进行了对比评估。在批量大小为1000个搜索键、B+树包含一百万条记录、树阶为16的条件下,单内核FPGA设计相比单线程CPU实现实现了4.9倍的加速。在FPGA上并行运行四个内核实例时,相比使用16线程的CPU实现性能提升了2.1$\times$。

0
下载
关闭预览

相关内容

智能数据库学习型索引研究综述
专知会员服务
23+阅读 · 2023年1月14日
基于机器学习的FPGA电子设计自动化技术研究综述
专知会员服务
21+阅读 · 2022年11月22日
面向FPGA的布局与布线技术研究综述
专知会员服务
26+阅读 · 2022年9月3日
深度神经网络 FPGA 设计进展、实现与展望
专知会员服务
59+阅读 · 2022年3月26日
深度神经网络FPGA设计进展、实现与展望
专知会员服务
36+阅读 · 2022年3月21日
专知会员服务
18+阅读 · 2021年8月4日
FPGA加速系统开发工具设计:综述与实践
专知会员服务
69+阅读 · 2020年6月24日
专知会员服务
81+阅读 · 2020年6月20日
机器学习中的最优化算法总结
人工智能前沿讲习班
22+阅读 · 2019年3月22日
机器学习算法集锦:从贝叶斯到深度学习及各自优缺点
人工智能学家
11+阅读 · 2019年2月15日
2018年深度学习优化算法最新综述
计算机视觉战队
10+阅读 · 2018年12月11日
推荐系统算法合集,满满都是干货(建议收藏)
七月在线实验室
17+阅读 · 2018年7月23日
最新|深度离散哈希算法,可用于图像检索!
全球人工智能
14+阅读 · 2017年12月15日
并行算法演进,从MapReduce到MPI
凡人机器学习
10+阅读 · 2017年11月5日
国家自然科学基金
1+阅读 · 2016年12月31日
国家自然科学基金
43+阅读 · 2015年12月31日
国家自然科学基金
8+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
7+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
VIP会员
相关主题
最新内容
ICML 2026 | CFPO:用反事实策略优化提升多模态推理
专知会员服务
1+阅读 · 今天14:45
综述 | 世界动作模型:少做梦,多行动
专知会员服务
1+阅读 · 今天14:43
美以伊冲突:无人机与人工智能的运用
专知会员服务
2+阅读 · 今天14:31
《特种部队在透明战场中的生存力》最新报告
专知会员服务
2+阅读 · 今天14:11
《人工智能生成的零日漏洞:对未来作战的影响》
综述 | 3D场景图:开放挑战与未来方向
专知会员服务
8+阅读 · 6月22日
21世纪的无人机战争
专知会员服务
4+阅读 · 6月22日
《量子技术的军事任务技术适配与利用》
专知会员服务
5+阅读 · 6月22日
相关VIP内容
智能数据库学习型索引研究综述
专知会员服务
23+阅读 · 2023年1月14日
基于机器学习的FPGA电子设计自动化技术研究综述
专知会员服务
21+阅读 · 2022年11月22日
面向FPGA的布局与布线技术研究综述
专知会员服务
26+阅读 · 2022年9月3日
深度神经网络 FPGA 设计进展、实现与展望
专知会员服务
59+阅读 · 2022年3月26日
深度神经网络FPGA设计进展、实现与展望
专知会员服务
36+阅读 · 2022年3月21日
专知会员服务
18+阅读 · 2021年8月4日
FPGA加速系统开发工具设计:综述与实践
专知会员服务
69+阅读 · 2020年6月24日
专知会员服务
81+阅读 · 2020年6月20日
相关资讯
机器学习中的最优化算法总结
人工智能前沿讲习班
22+阅读 · 2019年3月22日
机器学习算法集锦:从贝叶斯到深度学习及各自优缺点
人工智能学家
11+阅读 · 2019年2月15日
2018年深度学习优化算法最新综述
计算机视觉战队
10+阅读 · 2018年12月11日
推荐系统算法合集,满满都是干货(建议收藏)
七月在线实验室
17+阅读 · 2018年7月23日
最新|深度离散哈希算法,可用于图像检索!
全球人工智能
14+阅读 · 2017年12月15日
并行算法演进,从MapReduce到MPI
凡人机器学习
10+阅读 · 2017年11月5日
相关基金
国家自然科学基金
1+阅读 · 2016年12月31日
国家自然科学基金
43+阅读 · 2015年12月31日
国家自然科学基金
8+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
7+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员