Resonance: Replacing Software Constants with Context-Aware Models in Real-time Communication
Jayant Gupchup, Ashkan Aazami, Yaran Fan, Senja Filipi, Tom Finley,, Scott Inglis, Marcus Asteborg, Luke Caroll, Rajan Chari, Markus Cozowicz,, Vishak Gopal, Vinod Prakash, Sasikanth Bendapudi, Jack Gerrits, Eric Lau,, Huazhou Liu, Marco Rossi, Dima Slobodianyk, Dmitri Birjukov

TL;DR
This paper introduces Resonance, a system that replaces fixed software constants with context-aware models using machine learning, demonstrated on Skype to optimize performance in real-time communication.
Contribution
It presents a novel approach using contextual bandits to dynamically tune constants in large software systems, with practical implementation and open-source tools.
Findings
Improved performance in Skype's audio, video, and transport components.
Identified challenges of ML inference in encapsulated large systems.
Open-sourced FeatureBroker to facilitate ML integration in software.
Abstract
Large software systems tune hundreds of 'constants' to optimize their runtime performance. These values are commonly derived through intuition, lab tests, or A/B tests. A 'one-size-fits-all' approach is often sub-optimal as the best value depends on runtime context. In this paper, we provide an experimental approach to replace constants with learned contextual functions for Skype - a widely used real-time communication (RTC) application. We present Resonance, a system based on contextual bandits (CB). We describe experiences from three real-world experiments: applying it to the audio, video, and transport components in Skype. We surface a unique and practical challenge of performing machine learning (ML) inference in large software systems written using encapsulation principles. Finally, we open-source FeatureBroker, a library to reduce the friction in adopting ML models in such…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Bandit Algorithms Research · Data Stream Mining Techniques · Machine Learning and Data Classification
