Take App, Prio, and Base64 encoding off of the main thread for GetEncodedOriginSnapshot
Categories
(Toolkit :: Telemetry, enhancement, P2)
Tracking
()
People
(Reporter: chutten, Unassigned)
References
(Blocks 1 open bug)
Details
App-encoding (taking "these origins were blocked by Content Blocking" and turning them into boolean vectors for prio to encode), Prio encoding (turning a boolean vector into an encoded byte array), and Base64 encoding (turning that byte array into a base64 string for transmit) do not need to be on the main thread.
In fact, bug 1509511 and its friends might mean the impact of doing so on the main thread (especially on shutdown) is actively harmful to performance.
So let's take them off-thread.
This is noting that we'll still need to build the JS objects and stuff on the main thread before resolving the promise. Nothing we can do about that.
(( Take a look at FetchTelemetryData's split of work for ideas. And GetLoadedModules{Result}Runnable for a two-runnable variant with a more relevant "assemble result into JS" portion ))
Reporter | ||
Comment 1•5 years ago
|
||
Taking this out of the prototype (not needed now. Maybe later).
Reporter | ||
Updated•5 years ago
|
Reporter | ||
Updated•5 years ago
|
Updated•2 years ago
|
Description
•