This EETimes article has a good overview on how to do power-debugging. At AESTE, we are working on something similar but for a slightly more sinistre purpose. However, looking at something like this is extremely encouraging as we know that there are others out there working along the same lines and we are not alone.
At AESTE, we believe that power is a systems problem that encompasses everything – from the electronics through to the people using the device. Therefore, any solution to the power problem has to be all-inclusive and not be limited to just the any specific function or role..
This makes a good read and is highly recommended for any embedded systems engineer.
In the past, only the hardware engineers of these devices had much input that would help curb their voracious energy requirements; today, however, we are seeing more of this capability returned to the software engineer as they struggle to formulate ideas as to how to lower the power footprint of their designs. This is the crux of power debugging: giving the software engineer the ability to see how their coding decisions impact the power profile of the device.