[perf] Group inline-related properties in `ComputedStyle` [chromium/src : main]

0 views
Skip to first unread message

Koji Ishii (Gerrit)

unread,
Jan 22, 2026, 3:21:33 AM (yesterday) Jan 22
to Anders Hartvoll Ruud, chrom...@appspot.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Anders Hartvoll Ruud

Koji Ishii added 1 comment

Patchset-level comments
File-level comment, Patchset 9 (Latest):
Koji Ishii . resolved

PTAL, does this make sense?

Open in Gerrit

Related details

Attention is currently required from:
  • Anders Hartvoll Ruud
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I526e57945ab83be056de77c039986eec152bdf61
Gerrit-Change-Number: 7495434
Gerrit-PatchSet: 9
Gerrit-Owner: Koji Ishii <ko...@chromium.org>
Gerrit-Reviewer: Anders Hartvoll Ruud <and...@chromium.org>
Gerrit-Reviewer: Koji Ishii <ko...@chromium.org>
Gerrit-CC: Menard, Alexis <alexis...@intel.com>
Gerrit-Attention: Anders Hartvoll Ruud <and...@chromium.org>
Gerrit-Comment-Date: Thu, 22 Jan 2026 08:21:02 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Steinar H Gunderson (Gerrit)

unread,
Jan 22, 2026, 3:54:14 AM (yesterday) Jan 22
to Koji Ishii, Anders Hartvoll Ruud, chrom...@appspot.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Anders Hartvoll Ruud and Koji Ishii

Steinar H Gunderson added 1 comment

Patchset-level comments
Steinar H Gunderson . unresolved

If we're not better on Speedometer, and code size goes up… why are we doing this? :-) Are we showing better on some other benchmark (e.g. the style perftest)? Are we reducing memory usage? Some other unstated benefit?

Open in Gerrit

Related details

Attention is currently required from:
  • Anders Hartvoll Ruud
  • Koji Ishii
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I526e57945ab83be056de77c039986eec152bdf61
    Gerrit-Change-Number: 7495434
    Gerrit-PatchSet: 9
    Gerrit-Owner: Koji Ishii <ko...@chromium.org>
    Gerrit-Reviewer: Anders Hartvoll Ruud <and...@chromium.org>
    Gerrit-Reviewer: Koji Ishii <ko...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-CC: Steinar H Gunderson <se...@chromium.org>
    Gerrit-Attention: Koji Ishii <ko...@chromium.org>
    Gerrit-Comment-Date: Thu, 22 Jan 2026 08:54:02 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    chromeperf@appspot.gserviceaccount.com (Gerrit)

    unread,
    Jan 22, 2026, 4:14:56 AM (yesterday) Jan 22
    to Koji Ishii, Steinar H Gunderson, Anders Hartvoll Ruud, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Anders Hartvoll Ruud and Koji Ishii

    Message from chrom...@appspot.gserviceaccount.com

    📍 Job mac-m1_mini_2020-perf/speedometer3 complete.

    See results at: https://pinpoint-dot-chromeperf.appspot.com/job/1478ad9e710000

    Gerrit-Comment-Date: Thu, 22 Jan 2026 09:14:48 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Steinar H Gunderson (Gerrit)

    unread,
    Jan 22, 2026, 4:15:48 AM (yesterday) Jan 22
    to Koji Ishii, Anders Hartvoll Ruud, chrom...@appspot.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Anders Hartvoll Ruud and Koji Ishii

    Steinar H Gunderson added 1 comment

    Patchset-level comments
    Steinar H Gunderson . unresolved

    If we're not better on Speedometer, and code size goes up… why are we doing this? :-) Are we showing better on some other benchmark (e.g. the style perftest)? Are we reducing memory usage? Some other unstated benefit?

    Steinar H Gunderson

    FWIW, I pooled all of your 750 Speedometer runs, and it still didn't show up as statistically significant on any of the subtests (nor the total score), so I think we can pretty clearly say there's no Speedometer win here.

    Memory usage on the style perftest appears to be ever so slightly worse (in practice probably the same). Performance on the style perftest appears to be in the noise.

    Gerrit-Comment-Date: Thu, 22 Jan 2026 09:15:31 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Steinar H Gunderson <se...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Koji Ishii (Gerrit)

    unread,
    Jan 22, 2026, 4:44:27 AM (yesterday) Jan 22
    to Steinar H Gunderson, Anders Hartvoll Ruud, chrom...@appspot.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Anders Hartvoll Ruud and Steinar H Gunderson

    Koji Ishii added 1 comment

    Patchset-level comments
    Steinar H Gunderson . unresolved

    If we're not better on Speedometer, and code size goes up… why are we doing this? :-) Are we showing better on some other benchmark (e.g. the style perftest)? Are we reducing memory usage? Some other unstated benefit?

    Steinar H Gunderson

    FWIW, I pooled all of your 750 Speedometer runs, and it still didn't show up as statistically significant on any of the subtests (nor the total score), so I think we can pretty clearly say there's no Speedometer win here.

    Memory usage on the style perftest appears to be ever so slightly worse (in practice probably the same). Performance on the style perftest appears to be in the noise.

    Koji Ishii

    Thanks for taking a look at this. The goal is to improve the memory locality in the line breaker and inline layout.

    I'm also hoping to improve the memory in style, as inline-related properties are more likely to be set together, but I'm not familiar with style perf tests. Thanks for running it and finding that there's a slight regression. Can you tell me how to run it by myself, to experiment other combinations?

    I was wondering whether this should focus on line breaker only, or include inline layout. If this is showing a regressed result, I'd like to try focusing on line breaker.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Anders Hartvoll Ruud
    • Steinar H Gunderson
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I526e57945ab83be056de77c039986eec152bdf61
    Gerrit-Change-Number: 7495434
    Gerrit-PatchSet: 9
    Gerrit-Owner: Koji Ishii <ko...@chromium.org>
    Gerrit-Reviewer: Anders Hartvoll Ruud <and...@chromium.org>
    Gerrit-Reviewer: Koji Ishii <ko...@chromium.org>
    Gerrit-Reviewer: Steinar H Gunderson <se...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-Attention: Steinar H Gunderson <se...@chromium.org>
    Gerrit-Comment-Date: Thu, 22 Jan 2026 09:43:58 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Steinar H Gunderson (Gerrit)

    unread,
    Jan 22, 2026, 4:48:24 AM (yesterday) Jan 22
    to Koji Ishii, Anders Hartvoll Ruud, chrom...@appspot.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Anders Hartvoll Ruud and Koji Ishii

    Steinar H Gunderson added 1 comment

    Patchset-level comments
    Steinar H Gunderson . unresolved

    If we're not better on Speedometer, and code size goes up… why are we doing this? :-) Are we showing better on some other benchmark (e.g. the style perftest)? Are we reducing memory usage? Some other unstated benefit?

    Steinar H Gunderson

    FWIW, I pooled all of your 750 Speedometer runs, and it still didn't show up as statistically significant on any of the subtests (nor the total score), so I think we can pretty clearly say there's no Speedometer win here.

    Memory usage on the style perftest appears to be ever so slightly worse (in practice probably the same). Performance on the style perftest appears to be in the noise.

    Koji Ishii

    Thanks for taking a look at this. The goal is to improve the memory locality in the line breaker and inline layout.

    I'm also hoping to improve the memory in style, as inline-related properties are more likely to be set together, but I'm not familiar with style perf tests. Thanks for running it and finding that there's a slight regression. Can you tell me how to run it by myself, to experiment other combinations?

    I was wondering whether this should focus on line breaker only, or include inline layout. If this is showing a regressed result, I'd like to try focusing on line breaker.

    Steinar H Gunderson

    FWIW, I generally get disappointingly little win from memory locality optimizations in S3, even more so on macOS. The data sets generally fit too well in the M1's large and fast L2 cache.

    You can run the style perftest by ./out/Release/blink_perf_tests and looking at the GCAlloc lines. If you want to get more stable results (Oilpan leaks a tiny bit of behavior between tests, unfortunately), you can run one test per process, e.g.:

    ```
    for X in ECommerce Encyclopedia Extension News Search Social1 Social2 Sports Video; do printf "%-20s " $X; ./out/Release/blink_perf_tests --gtest_filter=StyleCalcPerfTest.$X 2>&1 | grep -i gcalloc; done
    ```

    You can also use `--measure-computed-style-memory`, which simply counts itself instead of asking Oilpan. This won't tell you about GC patterns, though.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Anders Hartvoll Ruud
    • Koji Ishii
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I526e57945ab83be056de77c039986eec152bdf61
    Gerrit-Change-Number: 7495434
    Gerrit-PatchSet: 9
    Gerrit-Owner: Koji Ishii <ko...@chromium.org>
    Gerrit-Reviewer: Anders Hartvoll Ruud <and...@chromium.org>
    Gerrit-Reviewer: Koji Ishii <ko...@chromium.org>
    Gerrit-Reviewer: Steinar H Gunderson <se...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-Attention: Anders Hartvoll Ruud <and...@chromium.org>
    Gerrit-Attention: Koji Ishii <ko...@chromium.org>
    Gerrit-Comment-Date: Thu, 22 Jan 2026 09:48:11 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Steinar H Gunderson <se...@chromium.org>
    Comment-In-Reply-To: Koji Ishii <ko...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Koji Ishii (Gerrit)

    unread,
    12:39 AM (12 hours ago) 12:39 AM
    to Anders Hartvoll Ruud, chrom...@appspot.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org

    Koji Ishii added 1 comment

    Patchset-level comments
    Koji Ishii . resolved

    Thanks for many ideas. I'll turn this to WIP for further investigations.

    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I526e57945ab83be056de77c039986eec152bdf61
    Gerrit-Change-Number: 7495434
    Gerrit-PatchSet: 9
    Gerrit-Owner: Koji Ishii <ko...@chromium.org>
    Gerrit-Reviewer: Koji Ishii <ko...@chromium.org>
    Gerrit-CC: Anders Hartvoll Ruud <and...@chromium.org>
    Gerrit-Comment-Date: Fri, 23 Jan 2026 05:38:43 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    chromeperf@appspot.gserviceaccount.com (Gerrit)

    unread,
    5:07 AM (8 hours ago) 5:07 AM
    to Koji Ishii, Anders Hartvoll Ruud, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org

    Message from chrom...@appspot.gserviceaccount.com

    📍 Job mac-m1_mini_2020-perf/speedometer3 complete.

    See results at: https://pinpoint-dot-chromeperf.appspot.com/job/1563c39e710000

    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I526e57945ab83be056de77c039986eec152bdf61
    Gerrit-Change-Number: 7495434
    Gerrit-PatchSet: 13
    Gerrit-Owner: Koji Ishii <ko...@chromium.org>
    Gerrit-Reviewer: Koji Ishii <ko...@chromium.org>
    Gerrit-CC: Anders Hartvoll Ruud <and...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-Comment-Date: Fri, 23 Jan 2026 10:06:55 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy
    Reply all
    Reply to author
    Forward
    0 new messages