Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(72)

Issue 3003063002: Fix the new generation growth criterion so it is not mislead into performing two growths in a row. (Closed)

Created:
3 years, 4 months ago by rmacnak
Modified:
3 years, 4 months ago
Reviewers:
danunez, siva
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Fix the new generation growth criterion so it is not mislead into performing two growths in a row. The decision to grow is based on the fraction of the objects that became garbage in the previous scavenge. If the previous scavenge included a growth, the new size of new space does not affect this statistic. If the program's allocation pattern remains the same, the next scavenge will see the same garbage ratio and decide to grow again, even if we would have hit the desired garbage fraction at the current capacity. This CL changes the garbage fraction to use the post-growth capcity as the dominator to prevent this eager double-growth. This change causes Flutter Gallery to stablize at a 4MB semispace instead of 16MB, with ~10ms instead of ~40ms scavenges while interacting with the time picker on a Nexus 4. R=danunez@google.com Committed: https://github.com/dart-lang/sdk/commit/878a5f26537ec80a78a36707d46f54a2da4ab1ed

Patch Set 1 #

Total comments: 2

Patch Set 2 : speeling #

Unified diffs Side-by-side diffs Delta from patch set Stats (+5 lines, -3 lines) Patch
M runtime/vm/scavenger.h View 1 1 chunk +4 lines, -2 lines 0 comments Download
M runtime/vm/scavenger.cc View 1 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 6 (2 generated)
rmacnak
3 years, 4 months ago (2017-08-21 18:27:28 UTC) #2
danunez
lgtm w/ comments https://codereview.chromium.org/3003063002/diff/1/runtime/vm/scavenger.h File runtime/vm/scavenger.h (right): https://codereview.chromium.org/3003063002/diff/1/runtime/vm/scavenger.h#newcode86 runtime/vm/scavenger.h:86: // garabge to give the scavenger ...
3 years, 4 months ago (2017-08-21 18:36:20 UTC) #3
rmacnak
https://codereview.chromium.org/3003063002/diff/1/runtime/vm/scavenger.h File runtime/vm/scavenger.h (right): https://codereview.chromium.org/3003063002/diff/1/runtime/vm/scavenger.h#newcode86 runtime/vm/scavenger.h:86: // garabge to give the scavenger a chance to ...
3 years, 4 months ago (2017-08-22 22:08:45 UTC) #4
rmacnak
3 years, 4 months ago (2017-08-22 22:10:24 UTC) #6
Message was sent while issue was closed.
Committed patchset #2 (id:20001) manually as
878a5f26537ec80a78a36707d46f54a2da4ab1ed (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698