Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Issue 656463004: Use the scheduling mechanism provided by the platform (Closed)

Created:
6 years, 2 months ago by Sami
Modified:
6 years, 2 months ago
CC:
blink-reviews, dglazkov+blink, mkwst+moarreviews_chromium.org, jochen (gone - plz use gerrit), eseidel
Project:
blink
Visibility:
Public.

Description

Use the scheduling mechanism provided by the platform This uses the newly added WebScheduler interface for posting idle tasks and checking whether main thread work should yield to let more critical tasks run. This interface is implemented by the platform. Design doc: https://docs.google.com/a/chromium.org/document/d/16f_RIhZa47uEK_OdtTgzWdRU0RFMTQWMpEWyWXIpXUo/edit#heading=h.srz53flt1rrp BUG=391005 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=184374

Patch Set 1 #

Patch Set 2 : Build fix. #

Patch Set 3 : Parser fix. #

Patch Set 4 : Added shutdown call. #

Total comments: 2

Patch Set 5 : Review comments. #

Patch Set 6 : Rebased + moved v8 to new interface. #

Total comments: 2

Patch Set 7 : Rebased once more. #

Patch Set 8 : Fixed header path. #

Total comments: 18

Patch Set 9 : Keep a utility wrapper for the scheduler. #

Patch Set 10 : Added tests. #

Patch Set 11 : Bad upload. #

Total comments: 3

Patch Set 12 : Split out adding the new interface. #

Total comments: 2

Patch Set 13 : Mike's comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+82 lines, -1044 lines) Patch
M Source/platform/SharedTimer.cpp View 1 chunk +3 lines, -4 lines 0 comments Download
M Source/platform/TraceLocation.h View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +8 lines, -1 line 0 comments Download
M Source/platform/blink_platform.gypi View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -2 lines 0 comments Download
M Source/platform/scheduler/Scheduler.h View 1 2 3 4 5 6 7 8 9 2 chunks +5 lines, -104 lines 0 comments Download
M Source/platform/scheduler/Scheduler.cpp View 1 2 3 4 5 6 7 8 9 2 chunks +21 lines, -269 lines 0 comments Download
D Source/platform/scheduler/SchedulerTest.cpp View 1 2 3 4 5 6 7 8 9 2 chunks +44 lines, -490 lines 0 comments Download
D Source/platform/scheduler/TracedTask.h View 1 2 3 4 5 6 7 8 1 chunk +0 lines, -72 lines 0 comments Download
D Source/platform/scheduler/TracedTask.cpp View 1 2 3 4 5 6 7 8 1 chunk +0 lines, -97 lines 0 comments Download
M Source/web/WebKit.cpp View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -1 line 0 comments Download
M Source/web/WebViewImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +1 line, -4 lines 0 comments Download

Messages

Total messages: 23 (6 generated)
rmcilroy
https://codereview.chromium.org/656463004/diff/130001/public/platform/WebScheduler.h File public/platform/WebScheduler.h (right): https://codereview.chromium.org/656463004/diff/130001/public/platform/WebScheduler.h#newcode34 public/platform/WebScheduler.h:34: // Can be called on any thread. This should ...
6 years, 2 months ago (2014-10-21 10:54:16 UTC) #2
Sami
I think this is now ready for review. PTAL. https://codereview.chromium.org/656463004/diff/130001/public/platform/WebScheduler.h File public/platform/WebScheduler.h (right): https://codereview.chromium.org/656463004/diff/130001/public/platform/WebScheduler.h#newcode34 public/platform/WebScheduler.h:34: ...
6 years, 2 months ago (2014-10-21 11:44:18 UTC) #4
Sami
Ross, I've now also changed v8 to use the new idle task API. PTAL.
6 years, 2 months ago (2014-10-21 13:08:43 UTC) #5
rmcilroy
V8 changes and WebScheduler.h lgtm, thanks! https://codereview.chromium.org/656463004/diff/170001/public/platform/WebScheduler.h File public/platform/WebScheduler.h (right): https://codereview.chromium.org/656463004/diff/170001/public/platform/WebScheduler.h#newcode29 public/platform/WebScheduler.h:29: // scheduler. Must ...
6 years, 2 months ago (2014-10-21 13:24:19 UTC) #6
rmcilroy
V8 changes and WebScheduler.h lgtm, thanks! https://codereview.chromium.org/656463004/diff/170001/public/platform/WebScheduler.h File public/platform/WebScheduler.h (right): https://codereview.chromium.org/656463004/diff/170001/public/platform/WebScheduler.h#newcode29 public/platform/WebScheduler.h:29: // scheduler. Must ...
6 years, 2 months ago (2014-10-21 13:24:19 UTC) #7
Sami
https://codereview.chromium.org/656463004/diff/170001/public/platform/WebScheduler.h File public/platform/WebScheduler.h (right): https://codereview.chromium.org/656463004/diff/170001/public/platform/WebScheduler.h#newcode29 public/platform/WebScheduler.h:29: // scheduler. Must be alled on the main thread. ...
6 years, 2 months ago (2014-10-21 13:54:12 UTC) #8
eseidel
https://codereview.chromium.org/656463004/diff/190002/Source/bindings/core/v8/V8Initializer.cpp File Source/bindings/core/v8/V8Initializer.cpp (right): https://codereview.chromium.org/656463004/diff/190002/Source/bindings/core/v8/V8Initializer.cpp#newcode313 Source/bindings/core/v8/V8Initializer.cpp:313: postIdleGCTaskMainThread(); So we'll always have a GC task in ...
6 years, 2 months ago (2014-10-21 16:11:02 UTC) #9
Sami
Thanks for the comments Eric. I've rewritten this to keep the platform-level helper so that ...
6 years, 2 months ago (2014-10-21 18:49:35 UTC) #10
Sami
6 years, 2 months ago (2014-10-22 12:57:29 UTC) #12
Sami
Hey Jochen, could you take a look here? This basically adds a platform interface (WebScheduler) ...
6 years, 2 months ago (2014-10-24 09:56:30 UTC) #14
jochen (gone - plz use gerrit)
can you put adding the new interface and deleting the old implementation into two separate ...
6 years, 2 months ago (2014-10-24 11:42:12 UTC) #15
Sami
> can you put adding the new interface and deleting the old > implementation into ...
6 years, 2 months ago (2014-10-24 12:01:33 UTC) #16
Sami
Hi Mike. Jochen suggested you might be able to help us with this patch. It's ...
6 years, 2 months ago (2014-10-24 13:48:57 UTC) #18
Mike West
LGTM % a few things. 1. The design doc doesn't open for me in an ...
6 years, 2 months ago (2014-10-24 14:59:35 UTC) #19
Sami
Thanks Mike! > 1. The design doc doesn't open for me in an incognito window. ...
6 years, 2 months ago (2014-10-24 15:24:39 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/656463004/290001
6 years, 2 months ago (2014-10-24 15:27:03 UTC) #22
commit-bot: I haz the power
6 years, 2 months ago (2014-10-24 17:51:49 UTC) #23
Message was sent while issue was closed.
Committed patchset #13 (id:290001) as 184374

Powered by Google App Engine
This is Rietveld 408576698