Closed Bug 1734997 Opened 3 years ago Closed 3 years ago

Prototype Prioritized Task Scheduling API

Categories

(Core :: DOM: Core & HTML, task, P3)

task

Tracking

()

RESOLVED FIXED
101 Branch
Tracking Status
firefox101 --- fixed

People

(Reporter: sefeng, Assigned: sefeng)

References

(Blocks 1 open bug)

Details

(Keywords: dev-doc-complete, perf-alert)

Attachments

(7 files, 1 obsolete file)

Attachment #9254768 - Attachment description: WIP: Bug 1734997 - Prototype the Prioritized Task Scheduling API → Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug
Attachment #9254769 - Attachment description: WIP: Bug 1734997 - Fix some failures related to the new interfaces that are introduced by the Scheduling API → Bug 1734997 - Fix some failures related to the new interfaces that are introduced by the Scheduling API r=smaug
Attachment #9254771 - Attachment description: WIP: Bug 1734997 - Fix the setPriority-delayed-task test in Firefox → Bug 1734997 - Fix the setPriority-delayed-task test in Firefox r=smaug
Attachment #9254772 - Attachment description: WIP: Bug 1734997 - Enable WPT for the Prioritized Task Scheduling API → Bug 1734997 - Enable WPT for the Prioritized Task Scheduling API r=smaug
Attachment #9254768 - Attachment description: Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug → WIP: Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug
Attachment #9254768 - Attachment description: WIP: Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug → Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug

If the timer preceision is reduced, the elapsed time between to
timers maybe shorter than the acutal result. And this fact
made this test to fail, so here we disable this feature for this
test.

Attachment #9254768 - Attachment description: Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug → WIP: Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug
Attachment #9254768 - Attachment description: WIP: Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug → Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug

This is the expected behavior according to the spec.

Blocks: 1753309
Attachment #9266586 - Attachment is obsolete: true
Pushed by sefeng@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/09469f7dd10e Prototype the Prioritized Task Scheduling API r=smaug https://hg.mozilla.org/integration/autoland/rev/5e624d630397 Allow some timeouts not to clamp in workers r=smaug https://hg.mozilla.org/integration/autoland/rev/724cccd1d595 Fix some failures related to the new interfaces that are introduced by the Scheduling API r=smaug https://hg.mozilla.org/integration/autoland/rev/55c6e7862298 Fix the setPriority-delayed-task test in Firefox r=smaug https://hg.mozilla.org/integration/autoland/rev/3a138b8501ec Enable WPT for the Prioritized Task Scheduling API r=smaug https://hg.mozilla.org/integration/autoland/rev/0846da0f5ab1 Don't reduce timer precision for post-task-delay.any.js r=smaug https://hg.mozilla.org/integration/autoland/rev/7ab1e7cc8f6a Add a test to test aborting the signal in postTask's callback r=smaug
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/33699 for changes under testing/web-platform/tests

Backed out 7 changesets (Bug 1734997) for causing bustages on WebTaskSchedulerMainThread.cpp.
Backout link
Push with failures - Bp-hybrid
Failure Log

Flags: needinfo?(sefeng)
Upstream PR was closed without merging
Regressions: 1765447

backed out due to build failures on Bp-hybird. Confirmed it's fixed with the updated patch. https://treeherder.mozilla.org/jobs?repo=try&revision=d18031d4316f4fdf60af2eac93d7369de6267476

Flags: needinfo?(sefeng)
Pushed by sefeng@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ab87d3254a13 Prototype the Prioritized Task Scheduling API r=smaug https://hg.mozilla.org/integration/autoland/rev/e5a0ef58ae70 Allow some timeouts not to clamp in workers r=smaug https://hg.mozilla.org/integration/autoland/rev/0713b093b0a6 Fix some failures related to the new interfaces that are introduced by the Scheduling API r=smaug https://hg.mozilla.org/integration/autoland/rev/60c9527ee051 Fix the setPriority-delayed-task test in Firefox r=smaug https://hg.mozilla.org/integration/autoland/rev/f1b93e2426fe Enable WPT for the Prioritized Task Scheduling API r=smaug https://hg.mozilla.org/integration/autoland/rev/64d6672ab0f5 Don't reduce timer precision for post-task-delay.any.js r=smaug https://hg.mozilla.org/integration/autoland/rev/a440fb0e93f1 Add a test to test aborting the signal in postTask's callback r=smaug
Upstream PR merged by moz-wptsync-bot
Regressions: 1766059
Regressions: 1765869

(In reply to Pulsebot from comment #9)

Pushed by sefeng@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/09469f7dd10e
Prototype the Prioritized Task Scheduling API r=smaug
https://hg.mozilla.org/integration/autoland/rev/5e624d630397
Allow some timeouts not to clamp in workers r=smaug
https://hg.mozilla.org/integration/autoland/rev/724cccd1d595
Fix some failures related to the new interfaces that are introduced by the
Scheduling API r=smaug
https://hg.mozilla.org/integration/autoland/rev/55c6e7862298
Fix the setPriority-delayed-task test in Firefox r=smaug
https://hg.mozilla.org/integration/autoland/rev/3a138b8501ec
Enable WPT for the Prioritized Task Scheduling API r=smaug
https://hg.mozilla.org/integration/autoland/rev/0846da0f5ab1
Don't reduce timer precision for post-task-delay.any.js r=smaug
https://hg.mozilla.org/integration/autoland/rev/7ab1e7cc8f6a
Add a test to test aborting the signal in postTask's callback r=smaug

== Change summary for alert #33900 (as of Fri, 22 Apr 2022 00:12:00 GMT) ==

Improvements:

Ratio Test Platform Options Absolute values (old vs new)
64% office LastVisualChange windows10-64-shippable-qr fission warm webrender 1,183.50 -> 425.33
61% office LastVisualChange windows10-64-shippable-qr cold fission webrender 1,876.54 -> 728.08
61% office LastVisualChange macosx1015-64-shippable-qr fission warm webrender 906.67 -> 353.33
59% office LastVisualChange macosx1015-64-shippable-qr cold fission webrender 1,516.67 -> 626.67
45% office loadtime linux1804-64-shippable-qr fission warm webrender 413.42 -> 226.67
... ... ... ... ...
12% office fcp macosx1015-64-shippable-qr cold fission webrender 468.17 -> 409.71

For up to date results, see: https://treeherder.mozilla.org/perfherder/alerts?id=33900

Interesting. Does office use the scheduler API and if the browser doesn't have it, they have some badly implemented JS wrapper for it
(since scheduler API doesn't really add anything which couldn't be done using other APIs).

So apparently due to a bug in our code, office didn't get loaded correctly, so we got the improvement.

With the fix (bug 1766059), the improvement got reverted back to normal.

Regressions: 1766670

FF101 docs work for this can be tracked in https://github.com/mdn/content/issues/15468

Most of this is complete/waiting review in https://github.com/mdn/content/pull/15978. Feedback welcome.

Regressions: 1874080
Blocks: 1920115
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: