Reviewers: Hannes Payer, Erik Corry Chromium.org,
Message:
PTAL
Description:
New algorithm for selecting evacuation candidates
This lifts the sqrt(n) limit on number of evacuation candidates,
replaces O(n * sqrt(n)) algorithm with O(n*log(n)) algorithm, and
removes hard-coded constants.
Evacuation candidates are selected as follows:
1) Sort pages from the most free to the least free.
2) Select the first m pages as evacuation candidates such that m is as
large as possible under the two conditions:
- The total size of live objects in the first m pages does not exceed
the given limit. The limit is controlled by --max_evacuation_size.
This is based on the assumption that the evacuation cost is
proportional to the total size of moved objects.
- The fragmentation of the (m+1)-th page does not exceed the given
limit. The limit is controlled by --target_fragmentation, the
fragmentation is defined as the percentage of free bytes in the page.
Please review this at https://codereview.chromium.org/1038313003/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+81, -214 lines):
M src/flag-definitions.h
M src/heap/mark-compact.cc
M src/heap/spaces.h
M src/heap/spaces.cc
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.