You can definitely try eliminating reservations and checking how much RAM you can get from that.
To do that, add a custom allocator to TAABBTreeLeafArray::Elems and update TAABBTreeLeafArray::Reset() to use ‘Elems.Empty();’ instead of ‘Elems.Reset();’.