180 likes | 299 Views
INTO THE WILD Studying Real User Activity Patterns to Guide Power Optimizations for Mobile Architectures. Alex Shye Ben Scholbrock Gokhan Memik Northwestern University, EECS Empathic Systems Project. The rise of mobile architectures. ENIAC 1946. 1940. 1950. 1960. 1970. 1980. 1990.
E N D
INTO THE WILDStudying Real User Activity Patterns to Guide Power Optimizations for Mobile Architectures Alex Shye Ben Scholbrock Gokhan Memik Northwestern University, EECS Empathic Systems Project International Symposium on Microarchitecture. New York, NY.
The rise of mobile architectures ENIAC 1946 1940 1950 1960 1970 1980 1990 2000 2010 Trends Implications IBM System/360 1964 Media players, PDAs, smartphones, netbooks Today IBM Thinkpad 700 1992 Form factor Apple II 1977 Power optimization is important Total energy store “Personal” nature The user drives execution International Symposium on Microarchitecture. New York, NY.
Summary Observation: For mobile architectures, the user is the workload Claim: Computer architects should study user activity to: (1) Characterize power consumption (2) Guide the development of power optimizations International Symposium on Microarchitecture. New York, NY.
Summary Observation: For mobile architectures, the user is the workload Claim: Computer architects should study user activity to: (1) Characterize power consumption • Log the activity of real users using the Android G1 • Develop an accurate power model for the Android G1 • Power consumption varies across users • The screen and CPU consume the most power (2) Guide the development of power optimizations • Screen time dominated by long screen intervals • Develop optimizations leveraging change blindness • Save ~10% total system power with minimal change to user satisfaction International Symposium on Microarchitecture. New York, NY.
Target Mobile Architecture • We study the HTC Dream mobile platform (Android G1) • First platform based upon Android OS • 2 phones, identical hardware: • Google Android Developer Phone 1 (ADP1) • T-Mobile G1 – commercialized version of the G1 How do we proceed with power optimizations? Which components consume the most power? [Google ADP1] International Symposium on Microarchitecture. New York, NY.
Logging Real User Activity NU JamLogger • Runs on any Android G1 • Logs system activity • CPU utilization, Wifi traffic, SD card traffic, screen usage, etc. • Periodically sends logs to our server • Lightweight • < 5% CPU overhead during active phone use • Logs compressed with gzip before upload • Getting Users • Released NU JamLogger on Android Market • Advertised at Northwestern University, University of Michigan, and online (Slashdot, online Android forums, etc) • 20 users, ~250 days of cumulative user activity • Each user has over 1 weeks worth of logs International Symposium on Microarchitecture. New York, NY.
Power Estimation Model … 49446 : CPU_Utilization 23.36 21.50 1.87 49491 : Load_Avg 4.14 3.49 3.30 1 185 363 50343 : Screen_Off 50557 : Wifi_Traffic 10 0 … Jam Logs Instrumented Battery via Current Clamp Time-based Traces 1 sec. samples w/ parameters Power Measurements Power Model Linear Regression International Symposium on Microarchitecture. New York, NY.
Accuracy of Power Model • Built power model with one ADP1, validated on a separate ADP1 • 6.6% median error per sample • < .1% error summed across all samples (total energy) Hardware Specific Runs Usage Scenarios International Symposium on Microarchitecture. New York, NY.
Using the Power Model • Estimated power closely tracks real-time measurements • Can sum parameters to derive a power breakdown CPU Wifi DSP Screen International Symposium on Microarchitecture. New York, NY.
Power Breakdown (20 Users) • There exists a significant variation in users • Idle is very important, consuming 49.3% of total energy International Symposium on Microarchitecture. New York, NY.
Power Breakdown (20 Users w/o Idle) • Ignoring Idle time, the screen and CPU are most power hungry • Screen: 35.5% (19.2% from brightness) • CPU: 12.7% International Symposium on Microarchitecture. New York, NY.
Studying User Activity for Optimization • Screen activity is a good indicator of usage activity • We study screen intervals, periods of time the screen is on • Observation: The total screen time is dominated by a small number of long screen intervals • Screen intervals of 100+ seconds account for ~70% of screen time • We develop a power optimization strategy that leverages change blindness to target the screen and CPU International Symposium on Microarchitecture. New York, NY.
Change Blindness The inability to distinguish changes in a stimulus [Simons 99] International Symposium on Microarchitecture. New York, NY.
Ramp Optimizations • Can change blindness be applied for power optimization? • We target the screen and CPU for optimization: • Screen Ramp: slowly dim brightness • Decreases brightness by 7 units (max 255) until 60% of starting brightness • CPU Ramp: slowly decrease effective frequency • Reaches 70% of maximum frequency in 40 seconds • Implemented by tuning ondemand DFS governor • We compare to Drop optimizations • Screen Drop: drop to 60% brightness after 40 seconds • CPU Drop: drop to 70% frequency after 40 seconds International Symposium on Microarchitecture. New York, NY.
Power Savings • Simulate optimizations on real user traces • CPU Ramp saves 4.9% system power (22.8% of CPU power) • Screen Ramp saves 5.7% system power (19.1% of screen power) • Ramp optimizations outperform Drop optimizations International Symposium on Microarchitecture. New York, NY.
Impact on User Experience User study design • Run four optimizations and a control run (in random order), on: • Web browsing: Browse Wikipedia • Game: BreakTheBricks game • Video: Watching video with PlayVideo • Ask for verbal satisfaction rating from 1 (low) – 5 (high) • At end of study, debrief user, and discuss acceptance of optimizations Results • No significant difference in user satisfaction when compared to control (using paired t-test) except for small changes in: • All optimizations with the Game • Screen Drop with Video • Users mostly rated based upon feeling of jumpiness/jitter • Works well for screen; most users couldn’t tell screen was changing • 15 users would use some of optimizations, 4 would not, 1 apathetic International Symposium on Microarchitecture. New York, NY.
Conclusion • We study real users on real devices in real environments • Develop and user power model to characterize power consumption • Show that power consumption does vary across users • When active, the screen and CPU consume the most power • Present an example of a user-activity-driven power optimization • Develop ramp optimizations targeting the screen and CPU • Save 5.7% and 4.9% of total system power for the screen and CPU, respectively • Ramp optimizations well-accepted by users, especially for the screen • Computer architects should study real user activity to: • (1) Characterize power consumption • (2) Guide the development of power optimizations International Symposium on Microarchitecture. New York, NY.
Thank You! • Questions? Alex Shye http://www.ece.northwestern.edu/~ash451 shye@northwestern.edu ESP: Empathic Systems Project http://www.empathicsystems.org NU JamLogger: Available on Android Market http://www.ece.northwestern.edu/microarchitecture/jamlogger/ International Symposium on Microarchitecture. New York, NY.