Abstract:
A method and apparatus to alter acoustic noise induced by processor performance changes is disclosed. In one embodiment, a processor having one or more processor cores may execute instructions of one or more applications. The performance level (e.g., supply voltage and/or clock frequency) may be adjusted in accordance with workload demands. One or more of the applications executing on a core of the processor may exhibit periodic behavior, thereby causing periodic changes (e.g., increases) in the performance level. Performance monitoring may be conducted and may detect the periodic changes in the workload of the application. Responsive to the detection of the periodic changes, a power management unit may subsequently cause future performance level changes associated with the application to occur aperiodically.
Abstract:
An electronic device may have a power system. The power system may receive power such as wireless power or wired power and may use a portion of the received power to charge a battery. Power consumption by control circuitry in the device can be adjusted by deactivating or activating processor cores in the control circuitry and by selectively starting or stopping software activities. By selectively reducing power consumption by circuitry in the electronic device other than battery charging circuitry in the power system that is charging the battery, additional power may be made available to charge the battery and/or battery capacity can be extended. The electronic device may reduce non-battery-charging activities in the device in response to information gathered with sensors such as motion and temperature information, information from the power system, information on device location, information on software settings, and other information.
Abstract:
An electronic device can include a power system including a battery and a processor programmed to detect connection of an external power source to the electronic device, determine an estimated disconnection time at which the external power source is expected to be disconnected from the electronic device, analyze power grid data corresponding to the external power source to identify one or more desired battery charging intervals and one or more undesired battery charging intervals prior to the estimated disconnection time, and operate the power system to charge the battery from the external power source during the identified one or more desired battery charging intervals and inhibit battery charging during the one or more undesired battery charging intervals. The processor can be programmed to inhibit battery charging by reducing the rate at which the battery charges or by preventing battery charging.
Abstract:
An electronic device can include circuitry that measures power delivered to the device and one or more processors configured to calculate power or energy drawn from a power grid by the device over a time period based on one or more measurements of power delivered to the device. The one or more processors can include a model of one or more power adapters characterizes load versus efficiency for the adapter. The circuitry that measures power delivered to the device can measure power delivered to the device via a wired and/or a wireless interface. The one or more processors can be further configured to estimate a carbon footprint of the device from the calculated power or energy drawn from the power grid by the device over the time period. The one or more processors can be further configured to communicate the estimated carbon footprint to an external device.
Abstract:
Systems and methods are disclosed for scheduling threads on a processor that has at least two different core types, such as an asymmetric multiprocessing system. Each core type can run at a plurality of selectable voltage and frequency scaling (DVFS) states. Threads from a plurality of processes can be grouped into thread groups. Execution metrics are accumulated for threads of a thread group and fed into a plurality of tunable controllers for the thread group. A closed loop performance control (CLPC) system determines a control effort for the thread group and maps the control effort to a recommended core type and DVFS state. A closed loop thermal and power management system can limit the control effort determined by the CLPC for a thread group, and limit the power, core type, and DVFS states for the system. Deferred interrupts can be used to increase performance.
Abstract:
An example computer-implemented method includes determining, by an electronic device, that the electronic device has not received a user activity for an interval of time. The method also includes determining, by the electronic device, a contextual state of the electronic device, and adapting, by the electronic device, a sleep delay value based on the determined contextual state of the electronic device. The method also includes determining that the interval of time has exceeded the sleep delay value, and responsive to determining that the interval of time has exceeded the sleep delay value, transitioning, by the electronic device, from a first power state to a second power state, where the first power state is higher or lower than the second power state.
Abstract:
In an embodiment, a system includes a memory controller that includes a memory cache and a display controller configured to control a display. The system may be configured to detect that the images being displayed are essentially static, and may be configured to cause the display controller to request allocation in the memory cache for source frame buffer data. In some embodiments, the system may also alter power management configuration in the memory cache to prevent the memory cache from shutting down or reducing its effective size during the idle screen case, so that the frame buffer data may remain cached. During times that the display is dynamically changing, the frame buffer data may not be cached in the memory cache and the power management configuration may permit the shutting down/size reduction in the memory cache.
Abstract:
An example computer-implemented method includes determining, by an electronic device, that the electronic device has not received a user activity for an interval of time. The method also includes determining, by the electronic device, a contextual state of the electronic device, and adapting, by the electronic device, a sleep delay value based on the determined contextual state of the electronic device. The method also includes determining that the interval of time has exceeded the sleep delay value, and responsive to determining that the interval of time has exceeded the sleep delay value, transitioning, by the electronic device, from a first power state to a second power state, where the first power state is higher or lower than the second power state.
Abstract:
In some implementations, a user device can schedule tasks based on user behavior. For example, the user device can receive a task request that includes a time window and user/device context parameters for performing the task. The user device can predict a time when the user/device context is optimal for performing the task during the time window based on historical context data. For example, the user device can generate an optimal context score for the task based on the context parameters and the historical context data. The user device can execute the requested task at a current time within the time window when a context score for the current context exceeds a threshold determined based on the optimal context score.
Abstract:
An apparatus for determining an average current through an inductor of a regulator circuit is disclosed. A counter unit may be configured to receive a control signal, which includes a plurality of pulses, from a Power Management Unit (PMU), and determine a number of pulses received during a predetermined period of time. A pulse sampler unit may determine a duration of a given pulse of the plurality of pulses. Circuitry may be configured to determine the average current through the inductor during the predetermined period of time dependent upon the number of pulses received during the predetermined period of time and the duration of the given pulse.