Google发布CityHash系列散列算法

  • 主题发起人 主题发起人 guest
  • 开始时间 开始时间

guest

Moderator
管理成员
注册
2002-10-07
消息
402,360
荣誉分数
76
声望点数
0
感谢JustHost官方给力促销中...的投递
Google 发布了 CityHash 系列字符串散列算法。今天发布的有两种算法:CityHash64 与 CityHash128。它们分别根据字串计算 64 和 128 位的散列值。这些算法不适用于加密,但适合用在散列表等处。
Google 一直在根据其数据中心常用的 CPU 对算法进行优化,结果发现对大多数个人计算机与笔记本同样有效益。尤其是在 64 位寄存器、指令集级的并行,以及快速非对其内存存取方面。

该算法的开发受到了前人在散列算法方面的巨大启发,尤其是 Austin Appleby 的 MurmurHash。但 CityHash 的主要优点是大部分步骤包含了至少两步独立的数学运算。现代 CPU 通常能从这种代码获得最佳性能。

但 CityHash 也有其缺点:代码较同类流行算法复杂。Google 希望为速度而不是为了简单而优化,因此没有照顾较短输入的特例。

总体而言,CityHash64 与 CityHash128 是解决经典问题的全新算法。在实际应用中,Google 预计 CityHash64 在速度方面至少能提高 30%,并有望提高多达两倍。此外,这些算法的统计特性也很完备。

via Google Open Source Blog

http://it/2011-04-13/1500607.php
</img>
</img>
soB2Aea8bSk
 
后退
顶部