代码改变世界

Google发布CityHash系列散列算法

  狼人:-)  阅读(881)  评论(0编辑  收藏  举报

Google发布了 CityHash系列字符串散列算法。今天发布的有两种算法:CityHash64 与 CityHash128。它们分别根据字串计算64和128位的散列值。这些算法不适用于加密,但适合用在散列表等处。

Google一直在根据其数据中心常用的CPU对算法进行优化,结果发现对大多数个人计算机与笔记本同样有效益。尤其是在64位寄存器、指令集级的并行,以及快速非对其内存存取方面。

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

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

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

文章转自:谷奥——探寻谷歌的奥秘http://www.guao.hk

编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示