Resources | developer.brewmp.com Resources | developer.brewmp.com

Developer

resources

Brew low power mode examples

This topic presents examples of Brew MP interactions with device power optimization algorithms.

Interaction with DCVS

By default, DCVS (Differential Cascode Voltage Switch) sets the clock rate based on the percentage of time the device spends in the sleep task (the idle percentage). If the idle percentage exceeds a certain amount for a few cycles, the clock rate is reduced; if the idle percentage is too low, the clock rate is increased.

When the device leaves BLPM, the DCVS algorithm resets, and the clock returns to the high-CPU state. While the device is not in BLPM, the DCVS algorithm changes so that the idle time that is used for clock scaling is the lesser of either the sleep task percentage or the percentage of time the UI task spends in the main top-level wait.

Interaction with clock speed management on non-DCVS devices

If the device does not support DCVS, Brew MP does not vote for any particular clock speed when the device is in BLPM and leaves the CPU calculation to other subsystems. When the device is not in BLPM, the CPU clock is set high.

Note: If the device does not support DCVS, it becomes more important for applets to re-enter BLPM when the device is idle; otherwise, battery power consumption will be higher.