Before revision:   In this paper, we propose a top-to-bottom view.
After revision:  Another approach that has been followed is to utilize hardware or operating system features to estimate software energy information at a coarse level of granularity such as blocks, methods or even applications. In this paper, we propose a top-to-bottom view.