Commit 03671ae9 authored by hpayer@chromium.org's avatar hpayer@chromium.org

Increase old generation space significantly if we observe a high promotion rate.

BUG=

Review URL: https://codereview.chromium.org/15104004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 9df341d6
......@@ -1585,6 +1585,11 @@ class Heap {
intptr_t limit =
Max(old_gen_size + old_gen_size / divisor, kMinimumPromotionLimit);
limit += new_space_.Capacity();
// TODO(hpayer): Can be removed when when pretenuring is supported for all
// allocation sites.
if (IsHighSurvivalRate() && IsStableOrIncreasingSurvivalTrend()) {
limit *= 2;
}
intptr_t halfway_to_the_max = (old_gen_size + max_old_generation_size_) / 2;
return Min(limit, halfway_to_the_max);
}
......@@ -1595,6 +1600,11 @@ class Heap {
intptr_t limit =
Max(old_gen_size + old_gen_size / divisor, kMinimumAllocationLimit);
limit += new_space_.Capacity();
// TODO(hpayer): Can be removed when when pretenuring is supported for all
// allocation sites.
if (IsHighSurvivalRate() && IsStableOrIncreasingSurvivalTrend()) {
limit *= 2;
}
intptr_t halfway_to_the_max = (old_gen_size + max_old_generation_size_) / 2;
return Min(limit, halfway_to_the_max);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment