key_ is a std::array, sized to the search key width for a given table. So that's stack allocated and valid. link is a uint8_t* to the memory map. So the hot path tells me that half the time is spent comparing a search key to the memory mapped buffer. This is done in the hashmap conflict list iterator.
(edited)