On 6/28/17 3:47 AM, Sönke Ludwig wrote:
Am 28.06.2017 um 00:51 schrieb Steven Schveighoffer:
But the AA that is currently used for the reference counts is another
obvious target, although that fortunately shouldn't be a big issue once
the connection count stabilizes, thanks to the open addressing of the
improved AAs. Still not necessary.The AA still allocates a block for each element. But you are right it
should stabilize at some point.Hm, I see. I'll have to take a look at the implementation. I was under
the impression that everything is stored in a single flat over-allocated
array (ofint
in this case).
No, it's an array of element pointers. Each element has a key, a value,
and the hash.
It's better than before in that it's not a linked-list per hash bucket.
I'm not sure it will ever change from this, since likely a lot of code
depends on those elements not moving (for instance doing key in aa, and
then rehashing).
-Steve