Skip to content

Perf/grid scroll bench - #15

Merged
JetSquirrel merged 1 commit into
mainfrom
perf/grid-scroll-bench
Oct 4, 2026
Merged

JetSquirrel merged 1 commit into
mainfrom
perf/grid-scroll-bench

Conversation

@JetSquirrel

Copy link
Copy Markdown
Owner

No description provided.

Every visible cell built a hidden copy Button (icon, tooltip, group
hover) and revealed it on hover; on a wide result that was half of each
scrolling frame. Now only the cell under the pointer builds it, and the
rest reserve its width so nothing reflows when the pointer arrives.

Draw time per frame while scrolling (M5, 120 Hz, 1440x900):
  100k x 8,  40 px/frame   5.3 -> 3.2 ms
  100k x 8,  800 px/frame  6.3 -> 3.9 ms
  60k x 30,  40 px/frame   7.9 -> 3.8 ms
  60k x 30,  800 px/frame  9.1 -> 5.3 ms  (was missing the 8.3 ms budget)

Adds `ducklocal __scroll-bench` behind the `scroll-bench` feature: it
scrolls the grid in a real window and reports GPUI's own frame trace
(wheel dispatch, draw, present, frame interval).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@JetSquirrel
JetSquirrel merged commit bf8abbc into main Oct 4, 2026
2 of 3 checks passed
@JetSquirrel
JetSquirrel deleted the perf/grid-scroll-bench branch October 6, 2026 18:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant