[发明专利]利用XeonPhi协处理器提升布隆滤波器处理性能的系统及方法有效
申请号: | 201510331094.5 | 申请日: | 2015-06-15 |
公开(公告)号: | CN104899007B | 公开(公告)日: | 2017-08-01 |
发明(设计)人: | 廖小飞;倪晟;金海;郭人通 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F9/48 |
代理公司: | 华中科技大学专利中心42201 | 代理人: | 廖盈春 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 利用 xeon phi 处理器 提升 滤波器 处理 性能 系统 方法 | ||
1.一种利用Xeon Phi协处理器提升布隆滤波器处理性能的系统,其特征在于,包括宿主端和协处理器端,其中:
所述宿主端包括性能采样模块、任务调度模块、第一通信模块和第一任务处理模块,其中:
所述性能采样模块用于周期性地测试所述宿主端和所述协处理器端的性能,并按照其处理能力分别设定任务分配比例;
所述任务调度模块用于根据所述任务分配比例将任务交付到所述宿主端和所述协处理器端的各个物理线程进行处理,并在运行过程中动态调整所述宿主端和所述协处理器端的负载;
所述第一通信模块用于管理所述宿主端与所述协处理器端之间的通信任务,并为所述宿主端维护一个双缓冲队列;
所述第一任务处理模块用于从所述任务调度模块获取任务,根据任务的类型进行处理,并在所述任务处理结束后直接将结果写入文件;
所述协处理器端包括第二通信模块和第二任务处理模块,其中:
所述第二通信模块用于管理所述协处理器端与所述宿主端之间的通信任务,并为所述协处理器端维护一个双缓冲队列;
所述第二任务处理模块用于从所述第二通信模块获取任务,根据任务的类型进行处理,并在所述任务处理结束后会将结果发送到所述第二通信模块,以传回宿主端写入文件;
所述第一任务处理模块和第二任务处理模块获取其分配到的每个任务中被处理的元素,使用预先设定的k个Hash函数计算得到k个当前元素所属的子向量数组的下标,将单次任务的k次串行Hash计算扩展成多次任务的k次串行Hash计算,以转化为数据级并行的处理方式。
2.如权利要求1所述的利用Xeon Phi协处理器提升布隆滤波器处理性能的系统,其特征在于,所述任务调度模块维护一个任务-线程映射表,每个表项包括待处理的元素和经所述任务调度模块分配的线程号,对于每个待处理的元素,其所有相关的任务均被划分到同一个物理线程,且均在这个物理线程所分配到的子向量上进行处理。
3.如权利要求2所述的利用Xeon Phi协处理器提升布隆滤波器处理性能的系统,其特征在于,每个物理线程管理的子向量与其拥有的缓存大小相同,每个物理线程所访问的内存空间将不大于其缓存的大小。
4.如权利要求1-3中任一项所述的利用Xeon Phi协处理器提升布隆滤波器处理性能的系统,其特征在于,所述第一通信模块维护的双缓冲队列,其中一个缓冲队列为输入缓冲队列,用于缓存来自于所述任务调度模块并传输到所述协处理器端的数据,另一个缓冲队列为传输缓冲队列,用于放置正在传输的数据;所述第二通信模块维护的双缓冲队列,其中一个缓冲队列为输入缓冲队列,用于缓存所述协处理器端传给所述宿主端的任务结果的数据;另一个缓冲队列为传输缓冲队列,用于放置正在传输的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510331094.5/1.html,转载请声明来源钻瓜专利网。