Map from small integers to values. More...
#include <small_map.h>
Map from small integers to values.
A data structure that maps small integers (in {0, ..., Num-1}) to values. It is designed to be more memory-efficient than std::map for this use case.
In the following we give some data about the memory consumption of small_mapt compared to std::map, on a 64-bit Linux system with GNU STL. It was determined with valgrind/massif. We configured the maps as small_mapt<uint64_t, uint32_t, Num=8> and std::map<uint8_t, uint64_t>. Thus, indices to small_mapt can be in {0, ..., 7} for this configuration.
Below we give the memory consumption (in bytes) of small_mapt and std::map, both for when containing 8 elements, and when being empty. The value for "useful" indicates the number of bytes requested, the value for "total" also includes padding bytes.
std::map:
Definition at line 68 of file small_map.h.
Definition at line 78 of file small_map.h.
Definition at line 237 of file small_map.h.
Definition at line 71 of file small_map.h.
Definition at line 133 of file small_map.h.
Definition at line 148 of file small_map.h.
Definition at line 92 of file small_map.h.
Definition at line 105 of file small_map.h.
Definition at line 327 of file small_map.h.
Definition at line 84 of file small_map.h.
Definition at line 474 of file small_map.h.
Definition at line 508 of file small_map.h.
Definition at line 541 of file small_map.h.
Definition at line 332 of file small_map.h.
Definition at line 437 of file small_map.h.
Definition at line 423 of file small_map.h.
Definition at line 198 of file small_map.h.
1 )
Definition at line 181 of file small_map.h.
Definition at line 172 of file small_map.h.
Definition at line 402 of file small_map.h.
Definition at line 206 of file small_map.h.
Definition at line 217 of file small_map.h.
Definition at line 535 of file small_map.h.
Definition at line 390 of file small_map.h.
Definition at line 395 of file small_map.h.
Definition at line 179 of file small_map.h.
Definition at line 186 of file small_map.h.
Definition at line 552 of file small_map.h.
Definition at line 188 of file small_map.h.
Definition at line 166 of file small_map.h.
Definition at line 168 of file small_map.h.
Definition at line 553 of file small_map.h.
Definition at line 177 of file small_map.h.