Scheduling docs
The following is a collection of scheduling-related documentation about the Blink Scheduler as well as other schedulers in Chrome.
2020
2018
- Browser-side scheduling roadmap
- Browser UI thread scheduler
- Browser IO thread scheduling for input latency
- Off Main Thread: Scheduling API
- Task traits for sequence scheduling in //content
- Stop more task queues in background on Android
- Discussion of more graceful worker shutdown
- Stop loading in background on Android
- Android startup performance tweaks
- C++ Promises for Chromium
- C++ Promise/Future/Coroutine in Chromium
- Java task scheduling
- Scheduling resource responses with right priority
- Refactor EventQueue
- Looking into scrolling lag
- Better scheduling metrics
- Scheduler architecture 2.0
- Task Scheduler - Message Loop integration and migration
- Supporting per-frame priorities in Blink Scheduler
- Simplifying scheduler interfaces
- Using dedicated workers for background work
- Untangling spaghetti of platform/scheduler/
- Better layering for platform/scheduler/
- Keyed Service scheduling
2017
- Improved load time scheduling
- Wake-up based throttling
- Background tabs & offscreen frames
- BeginFrame sequence numbers + acknowledgements
- Background tab use cases
- Activity traits
- Blink and Task Scheduler integration
- Lifecycle use cases
- Task execution policies in Blink
- Capturing task type metadata
- Further per-frame scheduler work
- Better tracing for Blink Scheduler
- Scheduling architecture roadmap: one pager
- RendererMainThreadLoad metrics
- State of the throttling
- Background tabs & offscreen frames
- Prototyping cooperative scheduling
- Cooperative scheduling in Blink
2016
- Time-based renderer task throttling
- V8 Performance Mode
- Isolating performance of third-party iframes
- Folly of Scheduling (BlinkOn 6)
- Rendering pipeline throttling (BlinkOn 6)
- Power usage impact of render pipeline throttling
- The future of TaskRunnerHandles
- Improved policy for blocking expensive tasks
- scheduler-dev performance metrics
- FrameBlamer
- Virtual time in Blink
- Browser I/O scheduler (Lucky Luke)
2015
- Virtual time in Headless Chrome
- Task traits
- Compositor and Display Scheduling presentation from scheduling summit
- Simplifying Task Management in Chromium
- Outline of known work needed to fix resize
- Blink spatial scheduling
- Throttling Blink's rendering pipeline for hidden content
- Scheduling to avoid checkerboard in Chrome
- State of GPU scheduling
- Scheduling architecture diagram
- Event dispatch diagram
- Proxying MessageLoop tasks to the Scheduler
- Scheduling JS timer execution
- PSA: How to write reliable layout tests
- Long Idle Tasks: Coupling wagons to the Blink Midnight Train
- Cooperative scheduling in Javascript
2014
- Blink Scheduler talk at BlinkOn 3
- Blink Scheduler
- Blink Scheduler refactoring (moving from Blink to content)
- Idle Tasks in the Blink Scheduler
- Resource loading tasks and the Blink Scheduler
- Blink Scheduler friendly HTMLDocumentParser
- Trustable Future Sync Points
- Unified VSync Scheduling
- VSync-Aligned Buffered Input
- London Perf Summit - Chrome Scheduling
- GPU Service Scheduling Latency
- Related
2013
- Synthetic Scheduler Tests
- Chrome Frame Synchronization
- Chrome Scheduling Overhaul Phase 1
- Chrome Scheduling Overhaul Phase 2
- Improved vsync scheduling for Chrome on Android
- ZilCh