Make 2D canvas send drawing commands to another thread for rendering

NEW
Unassigned

Status

()

Core
Graphics
5 years ago
5 years ago

People

(Reporter: roc, Unassigned)

Tracking

(Blocks: 1 bug)

18 Branch
x86_64
Windows 7
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Chrome and IE10 are doing this. We should too, both to win on "benchmarks" that measure time taken to issue canvas drawing commands, and because it's an actual win on multicore machines.

IMHO this is lower priority than OMTC. It would interact with OMTC so we should probably not start it until that's done.

There are at least two ways to do this:
1) create a new Azure backend that bridges Azure calls to another thread
2) actually modify CanvasRenderingContext2D to marshal calls at that level
I'm not sure which approach would be better. Option #2 would be slightly more performance since it'd mean doing slightly less work on the main thread, and we could customize the marshalling for canvas.
Option #1 would be more reusable for other cases (like content drawing), though.
You need to log in before you can comment on or make changes to this bug.