Extending Battery Life For Streaming Media Playback

Manuj R Sabharwal and Abhishek Agrawal
Intel Corporation

Download Article

Download Extending Battery Life For Streaming Media Playback [PDF 313KB]


Growing numbers of users are now watching multimedia content streamed to their mobile devices from content servers and computing clouds. This leads to energy efficiency becoming significantly important so that these users can view multimedia content for longer durations with the limited battery capacity these devices typically have. This paper reports on the power consumption profile of streaming media streams and their impact on battery life for mobile devices. Additionally, we provide an analysis of playback behavior to identify issues such as large numbers of context switches, high interrupt rates, etc., leading to increases in power consumption. Finally, the authors discuss low power techniques such as increasing timer-tick granularity and content caching which can be used to reduce the total power consumption during streaming media playback. We demonstrate the power savings achieved in the prototype implementation.

Figure 1 shows the experimental setup used to collect the power data. The power data was collected for the target system having an Intel® Core™ i5 mobile processor running Microsoft Windows 7 Ultimate* (clean install with no software additions). The target system had special built-in sense resistors in the motherboard to help calculate the power of different components (i.e., CPU package power, graphics and memory) by measuring the voltage and current drop across them every 50 milliseconds. Two industry leading playback software applications were used for the study. The workload used was a H.264 encoded 1080p video clip. To sanitize the experimental results against the effects of varying network bandwidth, the video clip was buffered completely on the client side in the browser cache.

To analyze the power consumption for these media players, total platform power and individual system component power consumption was collected using default settings of the playback software. Table 1 gives the average power consumption values in Watts (W) averaged over three runs by playing the video clip for 10 minutes each time. From Table 1, it can be seen that fairly high consumption is demonstrated by Playback 1 at 21.06W and Playback 2 at 27.32 W of power. Windows® Powercfg [1] and Windows® Performance Toolkit [2] tool were used to analyze the reasons for this high power consumption. Table 2 lists the timer-tick resolution changes made by the two applications compared to system baseline, and Table 3 captures the change in the number of system calls and context switches for these applications. From Table 2 and Table 3, it is clear that both the applications (Playback 1 and Playback 2) change the default timer tick resolution values from 15.6 milliseconds (ms) to 1ms and have high numbers of interrupts/sec and context switches/sec, leading to an increase in the total time these applications spend in C0 state [3] as shown in Figure 2. Since C0 state is the highest power consumption state of the processor, this increased C0 state residency leads to an overall increase in power consumption by these applications.

To minimize C0 residency, the authors propose the approach of increasing the timer-tick resolution requested by these media players to a low power design, improving energy efficiency. To evaluate the power savings achieved by this solution, a prototype tool was developed to overwrite the application settings. Using this tool, the timer tick resolution was set to 10ms from 1ms. Table 6 shows the results for platform level power consumption for both the media players after the timer-tick change was implemented. The change resulted in the reduction of total power consumption of Playback 1 from 21.06 to 19.23W and for Playback 2 app from 27.32W to 24.19W. Power savings of 1.83W and 3.13W is reflected. Table 5 shows the reduction in number of context switches and interrupts, and Figure 3 shows the reduction in C0 state residency. Table 4 demonstrates that there was no significant impact on quality as the frames per second for the playback remains the same before and after the change. Content caching and hard disk spindown are some other techniques which can be used to further reduce the power consumption for streaming media playback.


Figure 1. Test Setup

Application Platform (Watts) CPU (Watts) Memory (Watts) Graphics (Watts)
Playback-1 21.06 7.95 1.52 4.55
Playback-2 27.32 14.48 1.54 4.53

Table 1. Power Consumption Before Optimization

Application Timer Tick
Playback-1 1ms
Playback-2 1ms
System BaseLine 15.6ms

Table 2. Timer-Tick Resolution

Application Interrupts/sec Context Switches/sec
Playback-1 7978 5077
Playback-2 8316 6355
System baseline 508 435

Table 3. Context Switches and Interrupts/sec Before Optimization

Applications Frames Per Seconds before Optimization Frame Per Seconds After Optimization
Playback-1 24 24
Playback-2 24 24

Table 4. Frame Rate per Second

Application Interrupts/sec Context Switches/sec
Playback-1 5213 3919
Playback-2 6349 4931
System baseline 508 435

Table 5. Context Switches and Interrupts/sec After Optimization

Application Platform (Watts) CPU (Watts) Memory (Watts) Graphics (Watts)
Playback-1 19.23 7.55 1.52 4.34
Playback-2 24.19 10.23 1.51 4.12

Table 6. Power Consumption After Timer Tick Change




References

[1]. Windows* Powercfg utility. Available at: http://technet.microsoft.com/en-us/library/cc748940(WS.10).aspx
[2]. Windows* Performance Analysis Tools. Available at: http://msdn.microsoft.com/en-us/performance/cc825801.aspx
[3] Naveh et.al, "Power and Thermal Management in the Intel Core Duo Processor", Intel Technology Journal, Vol. 10, Issue 02, May 2006.

About the Authors

Abhishek Agrawal is a Technical Lead in Intel's Software and Services Group and drives Intel's initiatives on power efficiency for client platforms. He has significant research experience in energy efficiency, and has authored and co-authored several industry white papers and technical papers in refereed international conferences and journals. He has participated in numerous industry panels on Green Computing and is member of multiple industry power working groups such as CSCI WG, EBLWG, and UPAMD etc. Abhishek is a member of IEEE and ACM.

Manuj Sabharwal is a software engineer in the Developer Relations Division of the Intel Software and Services Group, and works in research and development for client mobile enabling devices.

Para obter informações mais completas sobre otimizações do compilador, consulte nosso aviso de otimização.