Tim Armstrong has posted comments on this change.

Change subject: IMPALA-3200: Implement suballocator for splitting buffers
......................................................................


Patch Set 5:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4715/5/be/src/bufferpool/suballocator.h
File be/src/bufferpool/suballocator.h:

PS5, Line 66: Suballocations are eagerly coalesced when freed
> Is the coalescing only one level or does it recurse all the way up the tree
It coalesces all the way up. It's much simpler to eagerly coalesce since it 
greatly reduces the number of possible states the allocator can be in. I think 
that in turn makes it easier to reason about fragmentation (although eagerly 
coalescing should minimise fragmentation since it also guarantees that the 
smallest contiguous memory range available is used for an allocation).

I'm not sure about FreePool. Mainly for now I want to make sure we have an 
allocator that works well for larger allocations - particularly the hash table 
use case. For the immediate future it could continue to operate on top of 
MemPool, even once MemPool is converted to use BufferPool buffers.


-- 
To view, visit http://gerrit.cloudera.org:8080/4715
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I8bfe0e429f67ad273f7c7d0816703a9e6c3da788
Gerrit-PatchSet: 5
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Tim Armstrong <tarmstr...@cloudera.com>
Gerrit-Reviewer: Jim Apple <jbap...@cloudera.com>
Gerrit-Reviewer: Michael Ho
Gerrit-Reviewer: Michael Ho <k...@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <tarmstr...@cloudera.com>
Gerrit-HasComments: Yes

Reply via email to