Paper - MAUI: Making Smartphones Last Longer with Code Offload

  • Metadata:
  • Essay:
    • As of today, energy consumption has become one of the biggest factors to consider when developing for mobile platforms. Even though mobile hardware progresses at an impressive pace, battery technology can not keep up with the growing resource demands posed by modern applications. The emergence of such bottlenecks is a recurring pattern in the history of computer science and a big part of CS research is dedicated to finding workarounds for such limitations.
    • Instead of trying to optimize the processes on the phone itself to overcome this issue, this paper suggests MAUI, an advanced framework for remote code offloading to reduce energy consumption (serialization and transfer can often be cheaper than computation). When developing a mobile application, a programmer merely needs to annotate functions that could possibly be executed remotely. MAUI then executes two versions of the app in parallel (on the mobile device and a remote server) and uses two core mechanisms to control the execution. The Profiler keeps track of the energy characteristics of the device, the network and the program itself. This information is then handled by the Solver, who uses global (program-wide) optimization to decide what methods should be executed on the phone and which should be handed off to the remote server. This process is supported by wrappers that help to transfer the application-state between the parallel executions. When using WIFI, MAUI helps significantly reduce energy consumption and boost the performance of applications like facial recognition and video games.
    • One thing really enjoyed about the paper was their presentation of the evaluation results.
    • The structuring of the evaluation into “Microbenchmarks’ (do the parts of the system perform to our satisfaction?) and “Marcobenchmarks’” (does MAUI as the sum of these parts reduce energy consumption? etc.) made the segment easier to follow and more enjoyable to read.
    • Also, the fact that they highlighted the lacking performance of MAUI using 3G should be noted. While some other papers seem to be focused on promoting their approach, a discussion that also highlights the system's shortcomings is much more desirable from a scientific viewpoint.
    • One significant limitation of the paper is their limited access to information about the inner workings of the devices during operation (dynamic CU voltage, manual PSM control).
    • Considering they even had some researchers from Microsoft on their team, working with members from the mobile development department to deal with these limitations in a more elegant did not seem out of the question.
    • Another notable limitation: The deployment of such a system to the real world would pose a lot of different problems (security, privacy, scalability) and should have been looked into when developing the system. While this may have been out of scope for this paper, would have welcomed a section that addresses some of these challenges and motivates others to pursue solutions to them.