Multi-threaded Rasterization for Display Latency Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computing systems with displays face delays and missing content due to the long and intensive process of rasterization by the main thread, which hinders timely updating and display of content.
Innovation Solution
The system introduces multiple rasterization threads associated with CPU cores, where the compositor thread sends instructions for rasterization to these threads instead of the main thread, allowing for efficient execution of rasterization when needed and deferring processing until content is within the viewport.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the main thread performs rasterization of content, then the content can be displayed, but the process is long and intensive causing delays and missing content
Solution Approach 1:
The patent segments the rasterization workload by creating multiple worker threads (first worker thread, second worker thread, etc.) that can independently process different content elements simultaneously. The compositor thread divides rasterization requests among these worker threads, enabling parallel processing and eliminating the single-thread bottleneck that caused delays and missing content.
2Manufacturing precision
If the compositor thread waits for the main thread to complete rasterization, then accurate content can be displayed, but the display is not updated in a timely fashion
Solution Approach 1:
The patent implements preliminary action by having worker threads pre-process and prepare content for display before the compositor thread needs it. The worker threads can begin rasterization work in advance, and the compositor thread retrieves already-prepared content, eliminating the waiting period while maintaining accuracy through the coordinated thread architecture.
3Device complexity
If the main thread handles all rasterization tasks, then the system structure is simple, but the CPU is overloaded and content updates are delayed
Solution Approach 1:
The patent segments the CPU workload by distributing rasterization tasks across multiple worker threads instead of concentrating all work in the main thread. This segmentation balances the CPU load across available cores, preventing overload and delays while maintaining a relatively simple multi-threaded structure that doesn't significantly increase system complexity.
Data Source
AI summary
Methods for drawing content to a display are provided. In one aspect, a method includes receiving input indicating content to be drawn to a display, and providing a request to prepare the content for display to a first thread. The method also includes receiving, in response to the provided request, instructions for drawing the content to the display, and providing the instructions for drawing the content to the display to a second thread. The method further includes executing, by the second thread, the instructions for drawing the content to the display. Systems and machine-readable media are also provided.


