_            _    _        _         _
      /\ \         /\ \ /\ \     /\_\      / /\
      \_\ \       /  \ \\ \ \   / / /     / /  \
      /\__ \     / /\ \ \\ \ \_/ / /     / / /\ \__
     / /_ \ \   / / /\ \ \\ \___/ /     / / /\ \___\
    / / /\ \ \ / / /  \ \_\\ \ \_/      \ \ \ \/___/
   / / /  \/_// / /   / / / \ \ \        \ \ \
  / / /      / / /   / / /   \ \ \   _    \ \ \
 / / /      / / /___/ / /     \ \ \ /_/\__/ / /
/_/ /      / / /____\/ /       \ \_\\ \/___/ /
\_\/       \/_________/         \/_/ \_____\/
parallel-hashmap 2.0.0
Channel: guix
Location: gnu/packages/datastructures.scm (gnu packages datastructures)
Home page: https://greg7mdp.github.io/parallel-hashmap/
Licenses: ASL 2.0
Build system: cmake
Synopsis: C++ implementation of efficient and concurrent hash maps
Description:

parallel-hashmap provides a family of header-only, very fast and memory-friendly hashmap and btree containers for C++11 and above.

It has the following characteristics:

  • Drop-in replacement for std::unordered_map, std::unordered_set, std::map, and std::set with better performance.

  • Requires C++11 compiler support and provides C++14 and C++17 APIs, including features like try_emplace.

  • Highly efficent and faster than standard unordered containers, Boost implementations, or sparsepp alternatives.

  • Memory-friendly: maintains low memory usage with a slight increase compared to sparsepp.

  • Heterogeneous lookup support.

  • Dump/load feature: for flat hash maps storing std::trivially_copyable data, the entire table can be dumped to disk and restored as a single array efficiently without hash computations. This is about 10 times faster than element-wise serialization but uses 10% to 60% extra disk space.

  • Automatic support for boost::hash_value() and default hash functions for std::pair and std::tuple.

Total packages: 1