Re: [webrtc-rtptransport] Not requiring per-packet JS Events (#20)

Slides I had at the Discussion Group earlier this week pertaining to this issue: https://docs.google.com/presentation/d/1bIuSiUsAiYsokxfBbxVZiaQwiFqO7D2e6my7dGacHEo/edit#slide=id.p

TL;DR:
There are 3 sources of CPU/Power consumption cost due to an API with high frequency events:
- OS scheduling interactions with thread hops/wakeups, CPU frequency bumping (solvable in the UA)
- JS object creation & GC per event/packet (not so large in initial prototyping on Chromium, good to get BYOB interfaces to avoid ArrayBuffer churn - filed #41 to follow up)
- JS Event creation & task scheduling & context switching (a major cost at the 1-10,000 events per second level, very much helped with batch APIs like we have here)

I'll prep a PR adding batch interfaces where an app would currently be forced to install Event listeners to get all of the required info.

-- 
GitHub Notification of comment by tonyherre
Please view or discuss this issue at https://github.com/w3c/webrtc-rtptransport/issues/20#issuecomment-2141574921 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Friday, 31 May 2024 09:17:52 UTC