Hasty Briefsbeta

双语

An Extensive Benchmark of C and C++ Hash Tables

2 months ago
  • #performance
  • #hash-tables
  • #benchmarking
  • 文章提出了一个针对C和C++哈希表的基准测试套件,旨在解决现有基准测试中的不足。
  • 测试了三种哈希表配置:32位整数键与32位值、64位整数键与448位值、16字符C字符串键与64位值。
  • 基准测试包括插入、删除、替换和查找操作,并通过不同负载因子下的性能表现进行衡量。
  • 结果展示了多种哈希表的性能表现,包括absl::flat_hash_map、ankerl::unordered_dense、boost::unordered_flat_map和Verstable。
  • 关键发现表明,在高负载因子下,SIMD和混合开放寻址/分离链接表表现良好,而基于节点的分离链接表速度较慢。
  • 文章最后根据具体用例和性能需求,给出了选择哈希表的建议。