Abstract
Efficiency with respect to energy consumption has increasingly been recognized as an important quality attribute for distributed software systems in embedded and pervasive environments. In this paper we present a framework for estimating the energy consumption of distributed software systems implemented in Java. Our primary objective in devising the framework is to enable an engineer to make informed decisions when adapting a system’s architecture, such that the energy consumption on hardware devices with a finite battery life is reduced, and the lifetime of the system’s key software services increases. Our framework explic itly takes a component-based perspective, which renders it well suited for a large class of today’s distributed, embedded, and pervasive applications. The framework allows the engineer to estimate the distributed system’s energy consumption at sys tem construction-time and refine it at runtime. In a large number of distributed application scenarios, the framework showed very good precision on the whole, giving results that were within 5% (and often less) of the actual energy consump tion incurred by executing the software. Our work to date has also highlighted the framework’s practical applications and a number of possible enhancements.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
Allison, P.D.: Multiple regression. Pine Forge Press (1999)
Drytkiewicz, W., et al.: Prest: a REST-based protocol for pervasive systems. In: IEEE International Conference on Mobile Adhoc and Sensor Systems (2004)
Farkas, K.I., et al.: Quantifying the Energy Consumption of a Pocket Computer and a Java Virtual Machine. In: ACM SIGMETRICS, New York (2000)
Feeney, L.M., et al.: Investigating the Energy Consumption of a Wireless Network Interface in an Ad Hoc Networking Environment. In: IEEE INFOCOM, Anchorage, AL (2001)
JamVM 1.3.2 (2006), http://jamvm.sourceforge.net/
Kaffe 1.1.5 (2005), http://www.kaffe.org/
Khurshid, S., et al.: Generalized Symbolic Execution for Model Checking and Testing. In: Int’l Conf. on Tools and Algorithms for Construction and Analysis of Systems, Warsaw, Poland (April 2003)
King, J.C.: Symbolic execution and program testing. Communications of the ACM 19(7) (1976)
KVM (2005), http://java.sun.com/products/cldc/wp/
Labrosse, J.J.: MicroC/OS-II: The Real-Time Kernel. CMP Books (2002)
Lafond, S., et al.: An Energy Consumption Model for An Embedded Java Virtual Machine. In: Virtual Machine Research and Technology Symposium (2006)
Seo, C., et al.: An Energy Consumption Framework for Distributed Java-Based Systems. In: Int’l Conf. on Automated Software Engineering, Atlanta, Georgia (November 2007)
Seo, C., et al.: Estimating the Energy Consumption in Pervasive Java-Based Systems. In: Int’l Conf. on Pervasive Computing and Communication, Hong Kong (March 2008)
Seo, C.: Prediction of Energy Consumption Behavior in Component-Based Distributed Systems. Ph.D. Dissertation, University of Southern California (April 2008)
Singh, H., et al.: Energy Consumption of TCP in Ad Hoc Networks. Wireless Networks 10(5) (2004)
Sinha, A., et al.: JouleTrack - A Web Based Tool for Software Energy Profiling. In: Design Automation Conference (2001)
SourceBank, http://archive.devx.com/sourcebank/
sourceForge.net, http://sourceforge.net/
Tan, T.K., et al.: Energy macromodeling of embedded operating systems. ACM Trans. on Embedded Comp. Systems (2005)
UPnP Device Architecture (2007), http://www.upnp.org/
Xu, R., et al.: Impact of Data Compression on Energy Consumption of Wireless-Networked Handheld Devices. In: Int’l Conf. on Distributed Computing Systems, Rhode Island (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Seo, C., Malek, S., Medvidovic, N. (2008). Component-Level Energy Consumption Estimation for Distributed Java-Based Software Systems. In: Chaudron, M.R.V., Szyperski, C., Reussner, R. (eds) Component-Based Software Engineering. CBSE 2008. Lecture Notes in Computer Science, vol 5282. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87891-9_7
Download citation
DOI: https://doi.org/10.1007/978-3-540-87891-9_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-87890-2
Online ISBN: 978-3-540-87891-9
eBook Packages: Computer ScienceComputer Science (R0)