• mlippautz's avatar
    [GC] Change behavior when reaching external allocation limit · 1cb27bce
    mlippautz authored
    With the recent changes to the incremental marking API we can now kick off
    incremental marking while respecting callback flags.
    
    Performance neutral for smoothness.image_decoding_cases on N9 (read: does not
    crash) as long as we synchronously process phantom callbacks
    (kGCCallbackFlagForced).
    
    OORT single run:
      "marksweep": {
        "count": 5,
        "pause_min": 7.5,
        "pause_max": 158.8,
        "pause_avg": 97.52000000000001,
        "pause_gt_10ms": 4
      }
      --- vs ---
      "marksweep": {
        "count": 5,
        "pause_min": 16.2,
        "pause_max": 22.1,
        "pause_avg": 19.32,
        "pause_gt_10ms": 5
      }
    
    The number of actual full GCs varies. The improvement manifests in reduced
    maximum and average pauses.
    
    BUG=chromium:515795
    LOG=N
    
    Review URL: https://codereview.chromium.org/1271253002
    
    Cr-Commit-Position: refs/heads/master@{#30028}
    1cb27bce
flag-definitions.h 47.5 KB