This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: Impact of JVM SuperOperators on Energy Consumption in Resource-Constrained Embedded Systems * Carmen Badea Center for Embedded Computer Systems Department of Computer Science University of California at Irvine [email protected] Alexandru Nicolau Center for Embedded Computer Systems Department of Computer Science University of California at Irvine [email protected] Alexander V. Veidenbaum Center for Embedded Computer Systems Department of Computer Science University of California at Irvine [email protected] Abstract Energy consumption is one of the most important issues in resource- constrained embedded systems. Many such systems run Java-based applications due to Java’s architecture-independent format (byte- code). Standard techniques for executing bytecode programs, e.g. interpretation or just-in-time compilation, have performance or memory issues that make them unsuitable for resource-constrained embedded systems. A superoperator-extended, lightweight Java Virtual Machine (JVM) can be used in resource-constrained embedded systems to improve performance and reduce memory consumption. This paper shows that such a JVM also significantly reduces energy consump- tion. This is due primarily to a considerable reduction in the number of memory accesses and thus in energy consumption in the instruc- tion and data TLBs and caches and, in most cases, in DRAM energy consumption. Since the fraction of processor energy dissipated in these units is approximately 60%, the energy savings achieved are significant. The paper evaluates the number of load, store, and computa- tional instructions eliminated by the use of proposed superoperators as compared to a simple interpreter on a set of embedded bench- marks. Using cache and DRAM per access energy we estimate the total processor/DRAM energy saved by using our JVM. Our results show that with 32KB caches the reduction in energy consumption ranges from 40% to 60% of the overall processor, plus DRAM en- ergy. Even higher savings may be achieved with smaller caches and increased access to DRAM as DRAM access energy is fairly high. Categories and Subject Descriptors C.4 [ Performance of Sys- tems ]: [measurement techniques, modeling techniques]; D.3.4 [ Programming Languages ]: Processors—optimization General Terms Experimentation, Measurement, Performance Keywords energy estimation, Java Virtual Machine, superopera- tors, profile-guided optimization, embedded systems *This work was supported in part by the National Science Foundation under grant NSF CCF-0311738 Permission to make digital or hard copies of all or part of this work for per- sonal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee....
View Full Document
- Spring '09
- Computer Science, energy consumption, energy savings, embedded system