DYNAMO: Power -aware middleware for distributed mobile computing - Mohapatra, Shivajit (ProQuest Dissertations & Theses, 2005)
This thesis presents the design and implementation of such an adaptive, distributed cross-layer framework (called DYNAMO) for achieving energy versus performance tradeoffs for mobile applications. DYNAMO achieves efficient cross layer adaptation by coordinating the techniques employed at each layer and enforcing the coordinated decisions using a distributed middleware framework. In this thesis we make the following adaptation. First, we propose an end-to-end approach to QoS aware power management, that coordinates power aware techniques within a mobile device as well as adaptations between the mobile device and a proxy server on the network. While the former ensures an optimized system configuration for the current application, the latter provides our system with the capability to integrate global system state (network congestion, system loads, mobility patterns, service availability) into our power optimization strategies. Second, we identify how applications utilize the various power hungry components of a mobile device (wireless network cards, the LCD display and the CPU subsystem) and exploit this knowledge to design specific cross-layer aware energy management strategies for these components. We present a set of algorithms that can be used for each of these components in a coordinated fashion. Thirdly we have designed an API that can be effectively be employed to achieve such cross layer optimization. We present the design and implementation of our prototype framework that uses the above cross layer adaptation approach. Finally, this thesis also presents theoretical foundations using game theory for evaluating concurrent energy management strategies within a mobile devices. We have implemented the DYNAMO framework in the Linux kernel and evaluated it on a Compaq Ipaq running an Intel StrongARM processor and adaptive multimedia streaming applications. Our experimental results show that our framework can effectively tradeoff application QoS for energy resulting in better user experience and longer device lifetimes. In particular, with our experiments with streaming video applications, we show that our framework was able to save 35%-55% of energy without sacrificing video quality. However, when we combine our adaptations with a sacrifice in video quality, our energy savings increase significantly to over 160% of the original energy consumption.