Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: a4ab006bdf55fb59302f8cffb4c8ade78cdf0dad
https://github.com/WebKit/WebKit/commit/a4ab006bdf55fb59302f8cffb4c8ade78cdf0dad
Author: Yusuke Suzuki <[email protected]>
Date: 2025-05-19 (Mon, 19 May 2025)
Changed paths:
M Source/WTF/wtf/MonotonicTime.cpp
M Source/WTF/wtf/MonotonicTime.h
M Source/WTF/wtf/SystemTracing.h
M Source/WebCore/page/Performance.cpp
Log Message:
-----------
Add signpost to Performance.measure
https://bugs.webkit.org/show_bug.cgi?id=293036
rdar://151355439
Reviewed by Mark Lam.
This patch adds code emitting synthetic signpost in performance.measure.
Many recent benchmarks started using performance.mark and
performance.measure. This patch adds environment variable
"WebKitPerformanceSignpostEnabled=1" and when it is provided,
emitting signpost for performance.measure's interval.
I discussed with Ben and he suggested using environment variable to
enable / disable signpost for our measurement.
This number is not strictly correct: signpost requires continuous time
while PerformanceEntry's time is monotonic time. If the system sleeps
during the measurement period, we will see wrong signpost region.
However, this is just for debugging purpose and this is fine for our use
case. If we would like to fix this, we need to keep continuous time in
all of our metrics pipeline (e.g. fetch's resource statistics). And it
is a bit too overkill for this feature.
* Source/WTF/wtf/MonotonicTime.cpp:
(WTF::MonotonicTime::approximateContinuousTime const):
* Source/WTF/wtf/MonotonicTime.h:
* Source/WTF/wtf/SystemTracing.h:
* Source/WebCore/page/Performance.cpp:
(WebCore::isSignpostEnabled):
(WebCore::Performance::measure):
Canonical link: https://commits.webkit.org/295144@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes