Power Trace Analysis for Mobile Processing Units
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional software engineering has overlooked power consumption by processing units in mobile computing devices, leading to inefficient energy management, particularly in smartphones and tablets, where rapid battery drain is a significant concern due to the lack of effective tools for analyzing energy consumption by individual modules.
Innovation Solution
A system that monitors and analyzes energy consumption by processing units in mobile devices by identifying power spikes, aligning them with execution logs, and applying machine learning techniques to estimate and visualize energy usage, enabling developers to identify energy-intensive modules and optimize code to reduce power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If software is designed for constant power supply devices like personal computers, then software functionality and performance can be optimized without power constraints, but power consumption by processing units in mobile devices is not controlled, leading to rapid battery drain
Solution Approach 1:
The patent segments power consumption analysis by dividing the processing unit's energy usage into discrete events and operations. By breaking down the power trace into individual events associated with specific modules, the system enables granular analysis of which software components consume the most power, allowing developers to optimize individual modules rather than the entire application.
Solution Approach 2:
The patent implements feedback by providing real-time power consumption data to developers through visual displays. The system monitors power usage, correlates it with module execution, and presents this information feedback loops that enable developers to identify and fix power-intensive operations, thereby reducing overall power consumption in subsequent iterations.
2Loss of energy
If developers use techniques like TCP versus UDP or batching requests to conserve battery power, then wireless chipset power consumption is reduced, but processing unit power consumption remains unmonitored and unoptimized
Solution Approach 1:
The patent introduces an intermediary power monitoring system that sits between the processing unit and the developer. This intermediary automatically instruments the code, captures power traces, correlates them with module execution, and presents analyzed results to developers, eliminating the need for developers to directly implement complex power analysis infrastructure.
Solution Approach 2:
The system enables self-service power optimization by automatically instrumenting the application code and performing power consumption analysis without requiring developers to manually add monitoring code. The power monitoring system autonomously captures, analyzes, and reports power consumption data, allowing developers to focus on optimizing based on the provided insights rather than implementing the analysis infrastructure themselves.
3Loss of energy
If operating systems cause backlight to draw diminished power after threshold inactivity, then display power consumption is reduced, but processing unit power consumption during active operation remains unanalyzed
Solution Approach 1:
The patent replaces manual or coarse power measurement methods with automated electronic power tracing and correlation systems. By using electronic instrumentation to capture power traces and correlate them with software module execution through time-stamping, the system achieves precise measurement of processing unit power consumption at the module level, far exceeding traditional coarse-grained measurement approaches.
Data Source
AI summary
Techniques pertaining to analyzing power consumed by a processing unit in a mobile computing device caused by execution of certain modules are described herein. A power trace is generated that indicates an amount of power consumed by the processing unit over time, and the power trace is aligned with an execution log. Spikes are extracted from the power trace, and computing operations are performed over the spikes to acquire data pertaining to power consumed by the processing unit that are attributable to modules in the execution log.


