• ulan's avatar
    Avoid excessive GCs in small heaps. · 22b1da99
    ulan authored
    Small heaps and small heap growing factor can lead to excessive GCs in corner cases.
    
    Consider function F(old_gen_size, factor) that returns the number of bytes that
    have to be allocated in the old generation to start incremental marking.
    
    F(4MB, 1.1) = 4MB (because of kMinimumOldGenerationAllocationLimit)
    F(6MB, 1.1) = 2MB (because of kMinimumOldGenerationAllocationLimit)
    F(8MB, 1.1) = 800KB
    
    Funtion F should be monotonic in old_gen_size, but it currently has a minimum
    at kMinimumOldGenerationAllocationLimit.
    
    This CL makes F monotonic.
    
    BUG=
    
    Review URL: https://codereview.chromium.org/1144223002
    
    Cr-Commit-Position: refs/heads/master@{#28549}
    22b1da99
Name
Last commit
Last update
..
OWNERS Loading commit data...
gc-idle-time-handler.cc Loading commit data...
gc-idle-time-handler.h Loading commit data...
gc-tracer.cc Loading commit data...
gc-tracer.h Loading commit data...
heap-inl.h Loading commit data...
heap.cc Loading commit data...
heap.h Loading commit data...
identity-map.cc Loading commit data...
identity-map.h Loading commit data...
incremental-marking-inl.h Loading commit data...
incremental-marking.cc Loading commit data...
incremental-marking.h Loading commit data...
mark-compact-inl.h Loading commit data...
mark-compact.cc Loading commit data...
mark-compact.h Loading commit data...
objects-visiting-inl.h Loading commit data...
objects-visiting.cc Loading commit data...
objects-visiting.h Loading commit data...
spaces-inl.h Loading commit data...
spaces.cc Loading commit data...
spaces.h Loading commit data...
store-buffer-inl.h Loading commit data...
store-buffer.cc Loading commit data...
store-buffer.h Loading commit data...