【技术实现步骤摘要】
一种基于PCIESSD的FPGA搜索匹配方法
本专利技术涉及计算机和数据存储
,尤其涉及一种基于PCIESSD的FPGA搜索匹配方法。
技术介绍
随着信息化的快速发展,库文件搜索的需求越来越多,对其响应速度的要求也越来越高。目前获取高性能的方法是把库文件缓存在服务器节点的内存中,用GPU(GraphicsProcessUnit)做并行的匹配计算。这种方法通过内存的超高带宽提高了搜索速度,通过GPU的并行计算能力提高了匹配速度,搜索库文件大小却直接受限于服务器节点的内存容量,大部分应用会采用基于服务器集群的分布式搜索。但是,当库文件较大时,这种方法会受到网络延迟和带宽限制而影响性能,而且库文件需要保存到节点的磁盘,库文件更新时,内存和磁盘需要同步更新。PCIESSD,即PCIE接口固态硬盘,带宽比内存低,但是容量大且可保存数据不丢失。近年来,随着PCIESSD的普及,使用PCIESSD加速搜索的应用越来越多。然而,现在大部分应用还是服务器节点软件把数据从PCIESSD读到内存,再做搜索匹配,IO性能受限于PCIESSD的带宽。也有单服务器节点插多块PCIESSD以提高IO性能的方法,但最终还是会受限于服务器节点支持的最大PCIE总线。另外,目前的方法还是需要GPU加速匹配计算,增加了应用成本。
技术实现思路
本专利技术的目的在于提供一种基于PCIESSD的FPGA搜索匹配方法,旨在FPGA实现的PCIESSD内部嵌入搜索匹配模块,克服了服务器节点和FPGA之间的PCIE总线带宽的限制, ...
【技术保护点】
1.一种基于PCIE SSD的FPGA搜索匹配方法,其特征在于:其中,FPGA芯片上包括SSD控制器、PCIE接口和匹配计算模块;所述方法包括:/n步骤A1:服务器节点通过PCIE接口向FPGA发送搜索模式SSD读写命令;/n步骤A2:所述FPGA判断服务器节点发送命令是否为DDR SDRAM写命令:/n若是,FPGA上的DMA模块根据命令中服务器节点的内存地址读取第一数据文件,写入DDR SDRAM中,转向步骤A8;若否,则转向步骤A3;/n步骤A3:所述FPGA判断服务器节点发送命令是否为搜索模式库文件读命令:/n若是,所述DMA模块向所述FPGA上的SSD控制器转发读命令,SSD控制器从FLASH阵列读取第二数据文件发送给所述DMA模块,所述DMA模块把第二数据文件写入DDR SDRAM中,转向步骤A8;若否,则转向步骤A4;/n步骤A4:所述DMA模块向匹配计算模块转发服务器节点发送的匹配计算模块启动命令;/n步骤A5:匹配计算模块启动相应的匹配计算单元;/n步骤A6:所述匹配计算单元从DDR SDRAM中读取第一数据文件和第二数据文件,进行相似度计算以取得匹配结果;/n步骤A ...
【技术特征摘要】
1.一种基于PCIESSD的FPGA搜索匹配方法,其特征在于:其中,FPGA芯片上包括SSD控制器、PCIE接口和匹配计算模块;所述方法包括:
步骤A1:服务器节点通过PCIE接口向FPGA发送搜索模式SSD读写命令;
步骤A2:所述FPGA判断服务器节点发送命令是否为DDRSDRAM写命令:
若是,FPGA上的DMA模块根据命令中服务器节点的内存地址读取第一数据文件,写入DDRSDRAM中,转向步骤A8;若否,则转向步骤A3;
步骤A3:所述FPGA判断服务器节点发送命令是否为搜索模式库文件读命令:
若是,所述DMA模块向所述FPGA上的SSD控制器转发读命令,SSD控制器从FLASH阵列读取第二数据文件发送给所述DMA模块,所述DMA模块把第二数据文件写入DDRSDRAM中,转向步骤A8;若否,则转向步骤A4;
步骤A4:所述DMA模块向匹配计算模块转发服务器节点发送的匹配计算模块启动命令;
步骤A5:匹配计算模块启动相应的匹配计算单元;
步骤A6:所述匹配计算单元从DDRSDRAM中读取第一数据文件和第二数据文件,进行相似度计算以取得匹配结果;
步骤A7:计算完成后,将匹配结果发送至所述DMA模块,所述DMA模块将匹配结果通过PCIE接口上传至服务器节点;
步骤A8:任务结束。
2.根据权利要求1所述的一种基于PCIESSD的FPGA搜索匹配方法,其特征在于:执行所述步骤A8过程中,还包括A81:所述DMA模块向服务器节点发送中断请求。
3.根据权利要求1所述的一种基于PCIESSD的FPGA搜索匹配方法,其特征在于:所述SSD控制器,通过PCIE接口与服务器节点通信,负责管理和控制FLASH阵列,根据服务器节点发送的命令对FLASH阵列做读写操作。
4.根...
【专利技术属性】
技术研发人员:肖飞,云飞龙,
申请(专利权)人:方一信息科技上海有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。