In a previous post, we shared how Microsoft ensures efficient use of device resources such as CPU and memory during Microsoft Teams calls and meetings. In this article, we want to dive deeper into how our goals and measurement methodology has been used to cut power consumption in Teams meetings.
Why is this important? In addition to reduced energy costs, these optimizations lower the burden on an organization’s hardware and improve the consistency and efficiency of Teams meetings and calling experiences across devices.
One of the challenges brought on by the ubiquity of Teams is the need to create equitable experiences across an incredibly diverse Windows device ecosystem. We’re committed to ensuring great calling and meeting experiences for users on low-end hardware as well as those on high-end workstations and high-resolution monitors. One of the factors we’ve addressed is the difference in power requirements for different customer profiles by ensuring Teams meetings are as energy-efficient as possible, regardless of setup.
First, we created a test framework to accurately measure power consumption for important meeting scenarios such as group video calls and screen sharing, which often involve energy-intensive processes such as content capture, encoding, and rendering. The next step was to evaluate these processes and identify opportunities to optimize the efficiency of each. Isolating and optimizing each of these processes enabled us to reduce power consumption up to 50% for energy-intensive scenarios such as having over 10 users in a meeting when everyone has their video turned on (see figure below).
During our evaluation of the video capture process, we focused on camera optimization to reduce demands on the CPU when using video in meetings, improving configurations, reducing code complexity for auto-exposure, auto-white balance, auto-aliasing, resulting in power draw reduction from the onboard camera and stability enhancements, and face detection processes. Then, we turned to video rendering, particularly for meetings with many participants, where the users receive a video stream for each participant displayed in the Teams client. Incoming videos can have different resolutions that require the client to rescale each. A simple 3x3 video grid once required nine distinct rendering operations. By combining the streams and composing them into a single video, we have been able to consolidate operations in video rendering and significantly reduce the power requirements for each device used.
A couple of the optimizations we released in 2021 focused on using the native resources of operating systems to improve how image fragments are transferred during the rendering process, as well as allowing Teams to tap the device’s graphic processing unit (GPU) dedicated to support improve rendering performance. This approach has also been extended to the user's video preview. Looking forward, we’ll continue to work closely with CPU and GPU chipset vendors to ensure the next generation of silicon is further optimized for Teams video conferencing.
Recently, we released rendering optimizations targeting individual screen components that have led to additional reductions in power consumption for video and application sharing. More screen-sharing optimizations are planned for later this year.
Similar to our other performance improvement initiatives, these power consumption improvements are subjected to progressive testing to validate the intended benefits across customers and environments. Additionally, we evaluate each new planned Teams feature to ensure existing processing efficiencies are not compromised.
So while we continue to launch innovative Teams features to help people connect and collaborate in new ways, we’re also dedicated to making sure these experiences are optimized for all users, regardless of their network and devices.
Continue to watch this blog to learn about new Teams features and optimizations designed to improve the quality of your calls and meetings.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.