Shade: a fast instruction-set simulator for execution profiling
SIGMETRICS '94 Proceedings of the 1994 ACM SIGMETRICS conference on Measurement and modeling of computer systems
Applications of CDMA in wireless/personal communications
Applications of CDMA in wireless/personal communications
Energy-aware adaptation for mobile applications
Proceedings of the seventeenth ACM symposium on Operating systems principles
Quantifying the energy consumption of a pocket computer and a Java virtual machine
Proceedings of the 2000 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
Energy-driven integrated hardware-software optimizations using SimplePower
Proceedings of the 27th annual international symposium on Computer architecture
Energy estimation tools for the Palm
Proceedings of the 3rd ACM international workshop on Modeling, analysis and simulation of wireless and mobile systems
Adaptive optimization in the Jalapeño JVM
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Quicksilver: a quasi-static compiler for Java
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
ASPLOS IX Proceedings of the ninth international conference on Architectural support for programming languages and operating systems
Computation offloading to save energy on handheld devices: a partition scheme
CASES '01 Proceedings of the 2001 international conference on Compilers, architecture, and synthesis for embedded systems
When to use a compilation service?
Proceedings of the joint conference on Languages, compilers and tools for embedded systems: software and compilers for embedded systems
Exploiting operation level parallelism through dynamically reconfigurable datapaths
Proceedings of the 39th annual Design Automation Conference
Synthesis and Optimization of Digital Circuits
Synthesis and Optimization of Digital Circuits
Saving portable computer battery power through remote process execution
ACM SIGMOBILE Mobile Computing and Communications Review
Power conservation strategy for mobile computers using load sharing
ACM SIGMOBILE Mobile Computing and Communications Review
ECOSystem: managing energy as a first class operating system resource
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
Task Allocation for Distributed Multimedia Processing on Wirelessly Networked Handheld Devices
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
JaMake: A Java Compiler Environment
LSSC '01 Proceedings of the Third International Conference on Large-Scale Scientific Computing-Revised Papers
UbiComp '01 Proceedings of the 3rd international conference on Ubiquitous Computing
FCCM '99 Proceedings of the Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines
LaTTe: A Java VM Just-in-Time Compiler with Fast and Efficient Register Allocation
PACT '99 Proceedings of the 1999 International Conference on Parallel Architectures and Compilation Techniques
Energy-Aware Compilation and Execution in Java-Enabled Mobile Devices
IPDPS '03 Proceedings of the 17th International Symposium on Parallel and Distributed Processing
Tuning Garbage Collection in an Embedded Java Environment
HPCA '02 Proceedings of the 8th International Symposium on High-Performance Computer Architecture
A compilation framework for power and energy management on mobile computers
LCPC'01 Proceedings of the 14th international conference on Languages and compilers for parallel computing
Verifiable annotations for embedded java environments
Proceedings of the 2005 international conference on Compilers, architectures and synthesis for embedded systems
Software adaptation for service-oriented systems
Proceedings of the 1st workshop on Middleware for Service Oriented Computing (MW4SOC 2006)
An effective offloading middleware for pervasive services on mobile devices
Pervasive and Mobile Computing
Future Generation Computer Systems
Time-bounded distributed QoS-aware service configuration in heterogeneous cooperative environments
Journal of Parallel and Distributed Computing
ScatterD: Spatial deployment optimization with hybrid heuristic/evolutionary algorithms
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
A generic software partitioning algorithm for pervasive computing
WASA'06 Proceedings of the First international conference on Wireless Algorithms, Systems, and Applications
Empirical evaluation of dynamic local adaptation for distributed mobile applications
OTM'05 Proceedings of the 2005 Confederated international conference on On the Move to Meaningful Internet Systems - Volume >Part I
Energy saving of mobile devices based on component migration and replication in pervasive computing
UIC'06 Proceedings of the Third international conference on Ubiquitous Intelligence and Computing
Design and evaluation of mobile applications with full and partial offloadings
GPC'12 Proceedings of the 7th international conference on Advances in Grid and Pervasive Computing
Energy Conservation for Image Retrieval on Mobile Systems
ACM Transactions on Embedded Computing Systems (TECS)
From Mobiles to Clouds: Developing Energy-Aware Offloading Strategies for Workflows
GRID '12 Proceedings of the 2012 ACM/IEEE 13th International Conference on Grid Computing
The software perspective for energy-efficient mobile applications development
Proceedings of the 10th International Conference on Advances in Mobile Computing & Multimedia
Review: Application mobility in pervasive computing: A survey
Pervasive and Mobile Computing
An asymmetric dual-processor architecture for low-power information appliances
ACM Transactions on Embedded Computing Systems (TECS)
Information Systems Frontiers
Hi-index | 0.00 |
Java-enabled wireless devices are preferred for various reasons. For example, users can dynamically download Java applications on demand. The dynamic download capability supports extensibility of the mobile client features and centralizes application maintenance at the server. Also, it enables service providers to customize features for the clients. In this work, we extend this client-server collaboration further by offloading some of the computations (i.e., method execution and dynamic compilation) normally performed by the mobile client to the resource-rich server in order to conserve energy consumed by the client in a wireless Java environment. In the proposed framework, the object serialization feature of Java is used to allow offloading of both method execution and bytecode-to-native code compilation to the server when executing a Java application. Our framework takes into account communication, computation, and compilation energies to decide where to compile and execute a method (locally or remotely), and how to execute it (using interpretation or just-in-time compilation with different levels of optimizations). As both computation and communication energies vary based on external conditions (such as the wireless channel state and user supplied inputs), our decision must be done dynamically when a method is invoked. Our experiments, using a set of Java applications executed on a simulation framework, reveal that the proposed techniques are very effective in conserving the energy of the mobile client.