【技术实现步骤摘要】
【国外来华专利技术】高性能单流LZ77压缩技术相关申请的交叉引用本申请要求2016年12月30日提交的题为“TECHNOLOGIESFORHIGH-PERFORMANCESINGLE-STREAMLZ77COMPRESSION”的美国技术专利申请序列号15/395,702的优先权,该申请要求2016年7月22日提交的美国临时专利申请No.62/365,969、2016年8月18日提交的美国临时专利申请No.62/376,859和2016年11月29日提交的美国临时专利申请No.62/427,268的优先权。
技术介绍
数据压缩是在许多计算应用中使用的重要计算机操作,包括服务器和客户端应用。例如,数据压缩可用于降低云计算应用的网络带宽要求和/或存储要求。许多常见的无损压缩格式基于LZ77压缩算法。使用基于LZ77的算法压缩的数据通常包括符号流(或“令牌”)。每个符号可以包括待复制到输出的文字数据或者重复已经解压缩的数据的引用。DEFLATE算法使用LZ77压缩结合哈夫曼编码来生成压缩输出。诸如DEFLATE的典型压缩算法可以通过执行附加计算来支持更高的压缩比(例如,级别9或L9比率)。附图说明这里描述的概念在附图中通过示例的方式示出,而不是作为限制。为了说明的简单和清楚,附图中示出的元件不一定按比例绘制。在认为合适的情况下,在附图中重复使用附图标记以指示相对应的或类似的元件。图1是根据各种实施例的其中可以实现这里描述的一种或多种技术的数据中心的概念性概述的图;图2是图1的数据中心的机架的逻辑配置的示例实施例的图;图3是根据各种实施例的其中可以实现本文描述的一种或多种技术的另一数据中心 ...
【技术保护点】
1.一种用于数据压缩的计算设备,所述计算设备包括:更新器电路,其用于基于输入数据流来更新索引数据结构,其中,所述索引数据结构包括与所述输入数据流中的偏移相关联的索引数据,并且其中,所述输入数据流被划分为多个块,其中,每个块具有第一长度;多个搜索切片电路,其中,相应的搜索切片电路用于处理所述输入数据流的多个块的不相交子集以生成相对应的令牌流,其中,相应的搜索切片电路使用所述索引数据来处理所述多个块的不相交子集;以及合并器电路,其用于合并所述多个令牌流以生成输出令牌流。
【技术特征摘要】
【国外来华专利技术】2016.07.22 US 62/365,969;2016.08.18 US 62/376,859;1.一种用于数据压缩的计算设备,所述计算设备包括:更新器电路,其用于基于输入数据流来更新索引数据结构,其中,所述索引数据结构包括与所述输入数据流中的偏移相关联的索引数据,并且其中,所述输入数据流被划分为多个块,其中,每个块具有第一长度;多个搜索切片电路,其中,相应的搜索切片电路用于处理所述输入数据流的多个块的不相交子集以生成相对应的令牌流,其中,相应的搜索切片电路使用所述索引数据来处理所述多个块的不相交子集;以及合并器电路,其用于合并所述多个令牌流以生成输出令牌流。2.根据权利要求1所述的计算设备,其中,所述第一长度包括128个字节。3.根据权利要求1所述的计算设备,其中,每个块与先前块重叠第二长度,并且其中,所述第一长度包括136个字节,而所述第二长度包括8个字节。4.根据权利要求1所述的计算设备,其中:所述更新器电路还用于将索引数据从所述索引数据结构提供到多个切片存储器,其中,每个切片存储器与相应的搜索切片电路相对应;以及使用所述索引数据来处理所述多个块的不相交子集以生成所述相对应的令牌流包括所述相应的搜索切片电路访问包括了与所述多个块的不相交子集相关联的索引数据的相对应的切片存储器。5.根据权利要求1所述的计算设备,还包括:编码器电路,其用于对所述输出令牌流进行编码以生成压缩的输出块。6.根据权利要求1所述的计算设备,其中,所述多个块被条带化为所述多个不相交子集,并且其中,不相交子集的每个块与先前块分开所述第一长度乘以比所述令牌流的数量少一。7.根据权利要求1-6中任一项所述的计算设备,其中,合并所述多个令牌流以生成所述输出令牌流包括所述合并器电路用于:从所述多个令牌流中读取先前令牌和下一令牌,其中,所述先前令牌和所述下一令牌相对于所述输入数据流是连续的;确定所述先前令牌和所述下一令牌是否源自同一令牌流;响应于确定所述先前令牌和所述下一令牌源自同一令牌流,将所述先前令牌输出到所述输出令牌流;响应于输出所述先前令牌,将所述下一令牌复制到所述先前令牌;响应于复制所述下一令牌,从所述多个令牌流中读取所述下一令牌;以及响应于确定所述先前令牌和所述下一令牌不是源自同一令牌流,而合并所述先前令牌和所述下一令牌以生成一个或多个同步令牌。8.根据权利要求7所述的计算设备,其中,合并所述先前令牌和所述下一令牌包括所述合并器电路用于:确定所述下一令牌的结束偏移是否大于或等于所述先前令牌的结束偏移;响应于确定所述下一令牌的结束偏移不大于或等于所述先前令牌的结束偏移,从所述多个令牌流中读取下一令牌;以及响应于确定所述下一令牌的结束偏移大于或等于所述先前令牌的结束偏移,合并所述先前令牌和所述下一令牌。9.根据权利要求8所述的计算设备,其中,合并所述先前令牌和所述下一令牌还包括所述合并器电路用于:确定所述下一令牌的结束偏移是否等于所述先前令牌的结束偏移;以及响应于确定所述下一令牌的结束偏移等于所述先前令牌的结束偏移,丢弃所述下一令牌。10.根据权利要求8所述的计算设备,其中,合并所述先前令牌和所述下一令牌还包括所述合并器电路用于:确定所述下一令牌的开始偏移是否小于所述先前令牌的开始偏移;响应于确定所述下一令牌的开始偏移小于所述先前令牌的开始偏移,丢弃所述先前令牌;以及响应于确定所述下一令牌的开始偏移小于所述先前令牌的开始偏移,截断所述下一令牌以在所述先前令牌的开始偏移处开始。11.根据权利要求8所述的计算设备,其中,合并所述先前令牌和所述下一令牌还包括所述合并器电路用于:确定所述下一令牌的开始偏移是否等于所述先前令牌的开始偏移;以及响应于确定所述下一令牌的开始偏移等于所述先前令牌的开始偏移,丢弃所述先前令牌。12.根据权利要求8所述的计算设备,其中,合并所述先前令牌和所述下一令牌还包括所述合并器电路用于:确定所述下一令牌的开始偏移是否大于所述先前令牌的开始偏移;响应于确定所述下一令牌的开始偏移大于所述先前令牌的开始偏移,确定在所述下一令牌的开始偏移与所述先前令牌的开始偏移之间的第一差值是否大于预定的阈值偏移;响应于确定所述下一令牌的开始偏移大于所述先前令牌的开始偏移,确定在所述下一令牌的结束偏移...
【专利技术属性】
技术研发人员:V·戈帕尔,J·D·吉尔福德,D·F·卡特,K·S·叶,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。