docs(producer): disambiguate compositor frame scheduling from the beginframe capture mode

This commit is contained in:
Vance Ingalls
2026-07-08 16:11:46 -07:00
parent b3493a7b61
commit 81a4f04360
@@ -594,10 +594,13 @@ export async function runCaptureStreamingStage(
} }
}, },
onFrameBuffer, onFrameBuffer,
// Interleaved DE workers each need their own browser PROCESS: pages // Interleaved DE workers each need their own browser PROCESS:
// co-tenant in one browser starve non-active pages of BeginFrames on // pages co-tenant in one browser share one compositor, whose
// the drawElement paint-wait path (measured: 86s vs 30s on a // internal frame scheduling deprioritizes non-active pages — their
// 3,245-frame rAF comp; the shared-pool run degrades ~3x). // canvas `paint` events starve and the drawElement paint-wait slows
// ~3x (measured: 86s vs 30s on a 3,245-frame rAF comp). This is
// Chromium's internal frame-production scheduling on ALL platforms,
// NOT the Linux-only HeadlessExperimental.beginFrame capture mode.
deParallelStream ? { ...captureCfg, enableBrowserPool: false } : captureCfg, deParallelStream ? { ...captureCfg, enableBrowserPool: false } : captureCfg,
); );
} catch (err) { } catch (err) {