TinyVM: An energy-efficient execution infrastructure for sensor networks

Kirak Hong, Jiin Park, Sungho Kim, Taekhoon Kim, Hwangho Kim, Bernd Burgstaller, Bernhard Scholz

Research output: Contribution to journalArticlepeer-review

9 Citations (Scopus)

Abstract

Energy-efficient implementation techniques for virtual machines (VMs) have received little attention yet: conventional wisdom claims that VMs have a diametrical effect on energy consumption, and VM-based applications are therefore short-lived. In this paper, we argue that bytecode interpretation is affordable if we synthesize VMs specifically for energy efficiency. We present TinyVM, an execution infrastructure that seamlessly integrates with C and nesC/TinyOS-based programming environments. TinyVM achieves high code density through the use of compressed bytecode as the primary program representation. Compressed bytecode allows rapid application deployment with low communication overhead. TinyVM executes compressed bytecode in place, which eliminates the need for a decompression stage and thereby reduces memory consumption on sensor nodes. Our infrastructure automates the creation of energy-efficient application-specific VMs. Applications are partitioned in machine code, bytecode, and VM instruction set extensions. Partitioning is manually controlled and/or fully guided by a discrete optimization problem that produces a partitioning with lowest energy consumption for a given program size limit. We provide experimental results for sensor network benchmarks and for selected applications on various CPU architectures including Atmega128-based motes and the ARM-based Intel iMote2. TinyVM has been released under the GNU General Public License.

Original languageEnglish
Pages (from-to)1193-1209
Number of pages17
JournalSoftware - Practice and Experience
Volume42
Issue number10
DOIs
Publication statusPublished - 2012 Oct

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'TinyVM: An energy-efficient execution infrastructure for sensor networks'. Together they form a unique fingerprint.

Cite this