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 (bytecode). 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 consumption. This is due primarily to a considerable reduction in the number of memory accesses and thus in energy consumption in the instruction 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 computational instructions eliminated by the use of proposed superoperators as compared to a simple interpreter on a set of embedded benchmarks. 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 energy. Even higher savings may be achieved with smaller caches and increased access to DRAM as DRAM access energy is fairly high.
- Tim Lindholm and Frank Yellin. Java Virtual Machine Specification. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1999. Google Scholar
Digital Library
- Paul Capewell and Ian Watson. A risc hardware platform for low power java. In VLSID ?05: Proceedings of the 18th International Conference on VLSI Design held jointly with 4th International Conference on Embedded Systems Design (VLSID?05), pages 138--143, Washington, DC, USA, 2005. IEEE Computer Society. Google Scholar
Digital Library
- David S. Hardin. aJile Systems: Low-Power Direct-Execution Java Microprocessors for Real-Time and Networked Embedded Applications. White paper. Available at www.ajile.com/downloads/aJilewhite-paper.pdf as of Aug. 2007.Google Scholar
- V. Tiwari, S. Malik, and A. Wolfe. Compilation techniques for low energy: An overview. In Proc. of Symp. Low-Power Electronics, 1994.Google Scholar
Cross Ref
- Nik Shaylor. A just-in-time compiler for memory-constrained lowpower devices. In Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium, pages 119--126, Berkeley, CA, USA, 2002. USENIX Association. Google Scholar
Digital Library
- Carmen Badea, Alexandru Nicolau, and Alexander Veidenbaum. A simplified java bytecode compilation system for resource-constrained embedded processors. In Proc. Intl. Conference on Compilers, Architecture, and Synthesis for Embedded Systems, Salzburg, Austria, Oct. 2007. Google Scholar
Digital Library
- Jikes Research Virtual Machine. http://jikesrvm.sourceforge.net/.Google Scholar
- James Montanaro et. al. A 160-mhz, 32-b, 0.5-w cmos risc microprocessor. Digital Tech. J., 9(1):49--62, 1997. Google Scholar
Digital Library
- Sebastien Lafond and Johan Lilius. An energy consumption model for java virtual machine. In TR597. TUCS, Finland, 2004.Google Scholar
- N. Vijaykrishnan, M. Kandemir, S. Kim, S. Tomar, A. Sivasubramaniam, and M. J. Irwin. Energy behavior of java applications from the memory perspective. In JVM?01: Proceedings of the JavaTM Virtual Machine Research and Technology Symposium on JavaTM Virtual Machine Research and Technology Symposium, pages 23--23, Berkeley, CA, USA, 2001. USENIX Association. Google Scholar
Digital Library
- Francky Catthoor, Eddy de Greef, and Sven Suytack. Custom Memory Management Methodology: Exploration of Memory Organisation for Embedded Multimedia System Design. Kluwer Academic Publishers, Norwell, MA, USA, 1998. Google Scholar
Digital Library
- N. Vijaykrishnan, M. Kandemir, M. J. Irwin, H. S. Kim, and W. Ye. Energy-driven integrated hardware-software optimizations using simplepower. In ISCA ?00: Proceedings of the 27th annual international symposium on Computer architecture, pages 95--106, New York, NY, USA, 2000. ACM. Google Scholar
Digital Library
- V. Tiwari, S. Malik, and A. Wolfe. Power analysis of embedded software: a first step towards software power minimization. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2(4):437--445, 1994. Google Scholar
Digital Library
- G. Sinevriotis and Th. Stouraitis. Power analysis of the arm 7 embedded microprocessor. In Proc. of the 9th Inter. Workshop on Power and Timing Modeling, Optimization and Simulation (PATMOS?99), pages 261--270. IEEE, 1999.Google Scholar
- Phillip Stanley-Marbell and Michael Hsiao. Fast, flexible, cycleaccurate energy estimation. In ISLPED ?01: Proceedings of the 2001 international symposium on Low power electronics and design, pages 141--146, New York, NY, USA, 2001. ACM. Google Scholar
Digital Library
- Kathleen Baynes, Chris Collins, Eric Fiterman, Brinda Ganesh, Paul Kohout, Christine Smit, Tiebing Zhang, and Bruce Jacob. The performance and energy consumption of three embedded realtime operating systems. In CASES ?01: Proceedings of the 2001 international conference on Compilers, architecture, and synthesis for embedded systems, pages 203--210, New York, NY, USA, 2001. ACM. Google Scholar
Digital Library
- Vivek Tiwari and Mike Tien-Chien Lee. Power analysis of a 32-bit embedded microcontroller. In ASP-DAC ?95: Proceedings of the 1995 conference on Asia Pacific design automation (CD-ROM), page 23, New York, NY, USA, 1995. ACM Press. Google Scholar
Digital Library
- Mike Tien-Chien Lee, Vivek Tiwari, Sharad Malik, and Masahiro Fujita. Power analysis and low-power scheduling techniques for embedded dsp software. In ISSS ?95: Proceedings of the 8th international symposium on System synthesis, pages 110--115, New York, NY, USA, 1995. ACM. Google Scholar
Digital Library
- CACTI 4.2. http://quid.hpl.hp.com:9081/cacti/.Google Scholar
- Jelena Trajkovic and Alexander Veidenbaum. Reducing SDRAM Energy Consumption in Embedded Systems. Technical Report TR04-02, University of California, Irvine, 2004.Google Scholar
- Standard Performance Evaluation Corporation. www.spec.org.Google Scholar
- PNG Software. http://www.sixlegs.com/software/png/.Google Scholar
- The Legion of the Bouncy Castle. http://www.bouncycastle.org/.Google Scholar
- ej TECHNOLOGIES. Jprofiler. http://www.ej-technologies.com/products/jprofiler/overview.html.Google Scholar
- Todd A. Proebsting. Optimizing an ansi c interpreter with superoperators. In POPL ?95: Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 322--332, New York, NY, USA, 1995. ACM Press. Google Scholar
Digital Library
- Ana Lucia Velloso Azevedo. Annotation-aware dynamic compilation and interpretation. PhD thesis, 2002. Chair-Alexandru Nicolau.Google Scholar
- Ben Stephenson and Wade Holst. Advancements in multicode optimization. In OOPSLA ?04: Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, pages 186--187, New York, NY, USA, 2004. ACM Press. Google Scholar
Digital Library
- Diarmuid O?Donoghue and James F. Power. Identifying and evaluating a generic set of superinstructions for embedded java programs. In ESA/VLSI, pages 192--198, 2004.Google Scholar
- Kevin Casey, David Gregg, M. Anton Ertl, and Andrew Nisbet. Towards superinstructions for java interpreters. In SCOPES, pages 329--343, 2003.Google Scholar
Cross Ref
Index Terms
Impact of JVM superoperators on energy consumption in resource-constrained embedded systems
Recommendations
Impact of JVM superoperators on energy consumption in resource-constrained embedded systems
LCTES '08: Proceedings of the 2008 ACM SIGPLAN-SIGBED conference on Languages, compilers, and tools for embedded systemsEnergy 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 (bytecode). Standard techniques for executing bytecode programs, ...
An Energy and Memory Trade-off Study on Resource Constrained Embedded JVM
ICPPW '14: Proceedings of the 2014 43rd International Conference on Parallel Processing WorkshopsDue to the thriving of the mobile devices market, there has been a great momentum in adopting Java technology in embedded mobile devices where optimizing energy consumptions extremely critical. However, since Java Virtual Machines(JVMs) are ...
A simplified java bytecode compilation system for resource-constrained embedded processors
CASES '07: Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systemsEmbedded platforms are resource-constrained systems in whichperformance and memory requirements of executed code are ofcritical importance. However, standard techniques such as full just-in-time(JIT) compilation and/or adaptive optimization (AO) may not ...







Comments