[发明专利]基于CPU-GPU架构的彩虹链表的处理方法及系统在审
申请号: | 201710972354.6 | 申请日: | 2017-10-18 |
公开(公告)号: | CN108038382A | 公开(公告)日: | 2018-05-15 |
发明(设计)人: | 姜海;王忠儒;李海磊 | 申请(专利权)人: | 北京丁牛科技有限公司 |
主分类号: | G06F21/60 | 分类号: | G06F21/60;G06F21/62;H04L9/32 |
代理公司: | 北京林达刘知识产权代理事务所(普通合伙) 11277 | 代理人: | 刘新宇 |
地址: | 100048 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 cpu gpu 架构 彩虹 处理 方法 系统 | ||
1.一种基于CPU-GPU架构的彩虹链表的生成方法,其特征在于,包括:
多个GPU从CPU接收彩虹链表的各链首;
各GPU根据收到的链首生成对应的链尾;
各GPU将各链尾及其对应的链首组成彩虹链;
各GPU将各彩虹链发送至CPU。
2.根据权利要求1所述的方法,其特征在于,各GPU根据收到的链首生成对应的链尾,包括:
各GPU根据收到的链首、预设的哈希函数和循环规约函数生成对应的链尾。
3.根据权利要求1或2所述的方法,其特征在于,还包括:CPU对各所述彩虹链进行去重处理,具体包括:
在两条彩虹链的链尾相同的情况下,CPU根据所述两条彩虹链的链首、预设的哈希函数和循环规约函数分别计算得到对应的两条彩虹链的各个节点;
如果所述两条彩虹链中具有相同的节点,则保留两条彩虹链中不同节点数量较多的一条。
4.根据权利要求1或2所述的方法,其特征在于,还包括:CPU对各所述彩虹链进行分类存储,具体包括:
根据ASCII可显示字符生成具有多级目录的文件存储结构,其中,所述多级目录是根据随机获取的三个ASCII可显示字符的值来生成的;
根据所述彩虹链的链尾的前三位字符的ASCII值查找文件存储结构中对应的文件,其中,所述彩虹链的链尾在前链首在后;
将所述彩虹链的第一剩余字符存储在查找到的对应的文件中,所述第一剩余字符为所述彩虹链去除了前三位字符之后的字符。
5.一种基于CPU-GPU架构的彩虹链表的查找方法,其特征在于,还包括:
多个GPU从CPU获取多个哈希值;
GPU根据多个哈希值,计算得到各哈希值对应的所有的待查链尾;
GPU按照每次计算过程中所用的哈希函数和规约函数,对各待查链尾进行分类存储;
GPU将分类存储后的文件发送到CPU,由CPU将收到的各文件存储到存储空间;
CPU根据收到的文件在预存的文件存储结构中,查找各待查链尾对应的链首,再根据查找到的链首、所用的哈希函数和规约函数计算各哈希值对应的明文。
6.根据权利要求5所述的方法,其特征在于,还包括:CPU根据收到的文件在预存的文件存储结构中,查找各待查链尾对应的链首,具体包括:
CPU根据各待查链尾中前三位字符的ASCII值在预存的文件存储结构中查找对应的文件;
CPU按照所述待查链尾的第二剩余字符,在查找到的对应的文件中,查找匹配的彩虹链,所述第二剩余字符为所述待查链尾去除了前三位字符之后的字符;
CPU根据匹配的彩虹链确定对应的链首。
7.一种基于CPU-GPU架构的彩虹链表的生成系统,其特征在于,包括:
CPU,用于向多个GPU发送彩虹链表的各链首;
多个GPU,每个GPU用于根据从CPU收到的链首生成对应的链尾,将各链尾及其对应的链首组成彩虹链,并将各彩虹链发送至CPU。
8.根据权利要求7所述的系统,其特征在于,所述GPU还用于根据收到的链首、预设的哈希函数和循环规约函数生成对应的链尾。
9.根据权利要求7或8所述的系统,其特征在于,所述CPU还用于对各所述彩虹链进行去重处理,具体用于:
在两条彩虹链的链尾相同的情况下,根据所述两条彩虹链的链首、预设的哈希函数和循环规约函数分别计算得到对应的两条彩虹链的各个节点;
如果所述两条彩虹链中具有相同的节点,则保留两条彩虹链中不同节点数量较多的一条。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京丁牛科技有限公司,未经北京丁牛科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710972354.6/1.html,转载请声明来源钻瓜专利网。