Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: fca080f0d318509fcad24d8705f38a64b5be3a0c
      
https://github.com/WebKit/WebKit/commit/fca080f0d318509fcad24d8705f38a64b5be3a0c
  Author: Elliott Williams <[email protected]>
  Date:   2026-05-20 (Wed, 20 May 2026)

  Changed paths:
    M Tools/Scripts/measure-build-time

  Log Message:
  -----------
  [Build perf] Add incremental build benchmark to measure-build-time
https://bugs.webkit.org/show_bug.cgi?id=315127
rdar://177469722

Reviewed by Ryan Haddad.

Add an incremental build test which is made up of various subtests. Each
subtest edits a file in WebKit sources and rebuild. Run these after a
clean build, and report them as components of a geometric mean score.

In measure-build-time, allow tasks to contribute their data as subtests
of another test in the final report. Add abstract Test classes to
support making edits to source files as part of the benchmark.
Make some minor changes to the Task interface to make it easier to
define them. Add a `description` field to each task and generate help
text describing what each test does. Adjust logging slightly to make it
easier to see what the test runner is doing between tests.

* Tools/Scripts/measure-build-time:
(Task):
(Task.run):
(CleanBuild):
(CleanBuild.__enter__):
(PatchIncrementalBuild):
(PatchIncrementalBuild.__enter__):
(PatchIncrementalBuild.__exit__):
(make_unified_diff):
(ContentEditIncrementalBuild):
(ContentEditIncrementalBuild.path):
(ContentEditIncrementalBuild.modify_content):
(ContentEditIncrementalBuild.__enter__):
(HeaderCommentIncrementalBuild):
(HeaderCommentIncrementalBuild.modify_content):
(HashCommentIncrementalBuild):
(HashCommentIncrementalBuild.modify_content):
(SourceWTFLogIncrementalBuild):
(SourceWTFLogIncrementalBuild.modify_content):
(IncrementalBuild1):
(IncrementalBuild2):
(IncrementalBuild3):
(IncrementalBuild4):
(IncrementalBuild5):
(IncrementalBuild6):
(IncrementalBuild7):
(NullBuild):
(run_test):
(main):

Canonical link: https://commits.webkit.org/313554@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to