Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

A Survey of Computation Offloading for Mobile Systems

Abstract

Mobile systems have limited resources, such as battery life, network bandwidth, storage capacity, and processor performance. These restrictions may be alleviated by computation offloading: sending heavy computation to resourceful servers and receiving the results from these servers. Many issues related to offloading have been investigated in the past decade. This survey paper provides an overview of the background, techniques, systems, and research areas for offloading computation. We also describe directions for future research.

This is a preview of subscription content, log in to check access.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

References

  1. 1.

    Battery Life Concerns Mobile Users (2005). http://www.cnn.com. Accessed 23 Sept 2005

  2. 2.

    Mobile Phone Users Demand Decent Batteries (2005). http://www.eetimes.com. Accessed 22 Sept 2005

  3. 3.

    Adams K, Agesen O (2006) A comparison of software and hardware techniques for x86 virtualization. In: International conference on architectural support for programming languages and operating systems, pp 2–13

  4. 4.

    Anagnostou ME, Juhola A, Sykas ED (2002) Context Aware services as a step to pervasive computing. In: Lobster workshop on location based services for accelerating the European-wide deployment of services for the mobile user and worker, pp 4–5

  5. 5.

    Anderson DP, Cobb J, Korpela E, Lebofsky M, Werthimer D (2002) SETI@ home: an experiment in public-resource computing. Commun ACM 45(11):56–61

  6. 6.

    Armbrust M, Fox A, Griffith R, Joseph AD, Katz R, Konwinski A, Lee G, Patterson D, Rabkin A, Stoica I et al (2010) A view of cloud computing. Commun ACM 53(4): 50–58

  7. 7.

    Bajikar S (2002) Trusted platform module (tpm) based security on notebook pcs-white paper. White Paper, Mobile Platforms Group–Intel Corporation, 20

  8. 8.

    Balan RK (2004) Powerful change part 2: reducing the power demands of mobile devices. IEEE Pervasive Comput 3(2):71–73

  9. 9.

    Balan RK (2006) Simplifying cyber foraging. PhD thesis, School of Computer Science, Carnegie Mellon University

  10. 10.

    Barham P, Dragovic B, Fraser K, Hand S, Harris T, Ho A, Neugebauer R, Pratt I, Warfield A (2003) Xen and the art of virtualization. In: ACM symposium on operating systems principles, pp 164–177

  11. 11.

    Buyya R, Yeo CS, Venugopal S (2008) Market-oriented cloud computing: vision, hype, and reality for delivering IT services as computing utilities. In: IEEE conference on high performance computing and communications, pp 5–13

  12. 12.

    Buyya R, Yeo CS, Venugopal S, Broberg J, Brandic I (2009) Cloud computing and emerging IT platforms: vision, hype, and reality for delivering computing as the 5th utility. Future Gen Comput Syst 25(6):599–616

  13. 13.

    Chen G, Kang B-T, Kandemir M, Vijaykrishnan N, Irwin MJ, Chandramouli R (2004) Studying energy trade offs in offloading computation/compilation in java-enabled mobile devices. IEEE Trans Parallel Distrib Syst 15(9): 795–809

  14. 14.

    Chow R, Golle P, Jakobsson M, Shi E, Staddon J, Masuoka R, Molina J (2009) Controlling data in the cloud: outsourcing computation without outsourcing control. In: ACM workshop on cloud computing security, pp 85–90

  15. 15.

    Chu H, Song H, Wong C, Kurakake S, Katagiri M (2004) Roam, a seamless application framework. J Syst Softw 69(3):209–226

  16. 16.

    Chun BG, Maniatis P (2009) Augmented smartphone applications through clone cloud execution. In: Conference on hot topics in operating systems, USENIX Association, pp 8–12

  17. 17.

    Cuervo E, Balasubramanian A, Cho D, Wolman A, Saroiu S, Chandra R, Bahl P (2010) MAUI: making smartphones last longer with code offload. In: International conference on mobile systems, applications, and services, pp 49–62

  18. 18.

    di Vimercati S, Foresti S, Jajodia S, Paraboschi S, Pelosi G, Samarati P (2008) Preserving confidentiality of security policies in data outsourcing. In: ACM workshop on privacy in the electronic society, pp 75–84

  19. 19.

    di Vimercati S, Foresti S, Jajodia S, Paraboschi S, Samarati P (2007) A data outsourcing architecture combining cryptography and access control. In: ACM workshop on computer security architecture, pp 63–69

  20. 20.

    Forman GH, Zahorjan J (1994) The challenges of mobile computing. Computer 27(4):38–47

  21. 21.

    Gentry C (2009) Fully homomorphic encryption using ideal lattices. In: ACM symposium on theory of computing, pp 169–178

  22. 22.

    Craig Gentry (2010) Computing arbitrary functions of encrypted data. Commun ACM 53(3):97–105

  23. 23.

    Goldberg RP (1974) Survey of virtual machine research. IEEE Comput 7(6):34–45

  24. 24.

    Gouveris S, Sivavakeesar S, Pavlou G, Malatras A (2005) Programmable middleware for the dynamic deployment of services and protocols in ad hoc networks. In: International symposium on integrated network management, pp 3–16

  25. 25.

    Goyal S, Carter J (2004) A lightweight secure cyber foraging infrastructure for resource-constrained devices. In: Mobile computing systems and applications, pp 184–195

  26. 26.

    Gu X, Nahrstedt K, Messer A, Greenberg I, Milojicic D (2003) Adaptive offloading inference for delivering applications in pervasive computing environments. In: IEEE international conference on pervasive computing and communications, pp 107–114

  27. 27.

    Guan T, Zaluska E, Roure D (2005) A grid service infrastructure for mobile devices. In: IEEE international conference on semantics, knowledge, and grid, pp 42–48

  28. 28.

    Guan T, Zaluska E, Roure D (2006) Extending pervasive devices with the semantic grid: a service infrastructure approach. In: IEEE conference on computer and information technology pp 113–118

  29. 29.

    Gurun S, Krintz C (2003) Addressing the energy crisis in mobile computing with developing power aware software. Technical Report, Department of Computer Science, University of California, Santa Barbara

  30. 30.

    Gurun S, Krintz C, Wolski R (2004) NWSLite: a light-weight prediction utility for mobile devices. In: International conference on mobile systems, applications, and services, pp 2–11

  31. 31.

    Hayes B (2008) Cloud computing. Commun ACM 51(7):9–11

  32. 32.

    Hemmes J, Poellabauer C, Thain D (2007) On-demand transient data storage and backup in mobile systems. In: IEEE military communications conference, pp 1–7

  33. 33.

    Hendrickson B, Leland R (1995) A multilevel algorithm for partitioning graphs. In: ACM/IEEE conference on supercomputing, pp 28–41

  34. 34.

    Hong JI, Landay JA (2011) An infrastructure approach to context-aware computing. Int J Hum-Comput Int 16(2): 287–303

  35. 35.

    Hong YJ, Kumar K, Lu YH (2009) Energy efficient content-based image retrieval for mobile systems. In: International symposium on circuits and systems, pp 1673–1676

  36. 36.

    Huerta-Canepa G, Lee D (2008) An adaptable application offloading scheme based on application behavior. In: International conference on advanced information networking and applications - workshops, pp 387–392

  37. 37.

    Jamwal V, Iyer S (2006) Automated refactoring of objects for application partitioning. In: Asia-Pacific software engineering conference, pp 671–678

  38. 38.

    Joseph AD, de Lespinasse AF, Tauber JA, Gifford DK, Kaashoek MF (1995) Rover: a toolkit for mobile information access. In: ACM symposium on operating systems principles, pp 156–171

  39. 39.

    Kanter T (2000) Cooperative mobile ambient awareness. Licentiate Thesis, Department of Teleinformatics, Royal Institute of Technology (KTH)

  40. 40.

    Kotz D, Gray R, Nog S, Rus D, Chawla S, Cybenko G (1997) Agent Tcl: targeting the needs of mobile computers. IEEE Internet Comput 1(4):58–67

  41. 41.

    Kremer U, Hicks J, Rehg J (2003) A compilation framework for power and energy management on mobile computers. In: Proceedings of the 14th international conference on Languages and compilers for parallel computing. Cumberland Falls, KY, USA, pp 115–131

  42. 42.

    Kumar K, Lu YH (2010) Cloud computing for mobile users: can offloading computation save energy? IEEE Comput 43(4):51–56

  43. 43.

    Lele AM, Nandy SK, Epema DHJ (2000) Harmony—an architecture for providing quality of service in mobile computing environments. J Interconnect Netw 1(3): 247–266

  44. 44.

    Li Z, Wang C, Xu R (2001) Computation offloading to save energy on handheld devices: a partition scheme. In: International conference on compilers, architecture, and synthesis for embedded systems, pp 238–246

  45. 45.

    Li Z, Wang C, Xu R (2002) Task allocation for distributed multimedia processing on wirelessly networked handheld devices. In: Parallel and distributed processing symposium, pp 79–84

  46. 46.

    Li Z, Xu R (2002) Energy impact of secure computation on a handheld device. In: IEEE international workshop on workload characterization, pp 109–117

  47. 47.

    Liu J, Kumar K, Lu YH (2010) Tradeoff between energy savings and privacy protection in computation offloading. In: ACM/IEEE international symposium on low power electronics and design, pp 213–218

  48. 48.

    Liu J, Lu Y-H (2010) Energy savings in privacy-preserving computation offloading with protection by homomorphic encryption. In: HotPower

  49. 49.

    Messer A, Greenberg I, Bernadat P, Milojicic D, Chen D, Giuli T, Gu X (2002) Towards a distributed platform for resource-constrained devices. In: International conference on distributed computing systems, vol 22, pp 43–51

  50. 50.

    Mowbray M, Pearson S (2009) A client-based privacy manager for cloud computing. In: International ICST conference on communication system software and middleware, pp 1–8

  51. 51.

    Neiger G, Santoni A, Leung F, Rodgers D, Uhlig R (2006) Intel virtualization technology: hardware support for efficient processor virtualization. Intel Technol J 10(3): 167–177

  52. 52.

    Nimmagadda Y, Kumar K, Lu Y-H, Lee CSG (2010) Real-time moving object recognition and tracking using computation offloading. In: IEEE international conference on intelligent robots and systems, pp 2449–2455

  53. 53.

    Noble BD, Price M, Mahadev Satyanarayanan M (1995) A programming interface for application-aware adaptation in mobile computing. School of Computer Science, Carnegie Melon University

  54. 54.

    Noble BD, Satyanarayanan M (1999) Experience with adaptive mobile applications in Odyssey. Mobile Netw Appl 4(4):245–254

  55. 55.

    Nurmi D, Wolski R, Grzegorczyk C, Obertelli G, Soman S, Youseff L, Zagorodnov D (2009) The eucalyptus open-source cloud-computing system. In: IEEE/ACM international symposium on cluster computing and the grid, pp 124–131

  56. 56.

    O’Hara KJ, Nathuji R, Raj H, Schwan K, Balch T (2006) Autopower: toward energy-aware software systems for distributed mobile robots. In: IEEE international conference on robotics and automation, pp 2757–2762

  57. 57.

    Ou S, Wu Y, Yang K, Zhou B (2008) Performance analysis of fault-tolerant offloading systems for pervasive services in mobile wireless environments. In: IEEE international conference on communications, pp 1856–1860

  58. 58.

    Ou S, Yang K, Hu L (2007) Cross: a combined routing and surrogate selection algorithm for pervasive service offloading in mobile ad hoc environments. In: IEEE global telecommunications conference, pp 720–725

  59. 59.

    Ou S, Yang K, Liotta A (2006) An adaptive multi-constraint partitioning algorithm for offloading in pervasive systems. In: IEEE international conference on pervasive computing and communications, pp 116–125

  60. 60.

    Ou S, Yang K, Liotta A, Hu L (2007) Performance analysis of offloading systems in mobile wireless environments. In: IEEE international conference on communications, pp 1821–1806

  61. 61.

    Perkins CE (1996) Handling multimedia data for mobile computers. In: Computer software and applications conference, pp 147–148

  62. 62.

    Powell ML, Miller BP (1983) Process migration in demos/mp. ACM SIGOPS Oper Syst Rev 17(5):110–119

  63. 63.

    Qi M (1997) Resource conservation in a mobile transaction system. IEEE T Comput 46:3:299–311

  64. 64.

    Rigole P, Berbers Y, Holvoet T (2004) Component-based adaptive tasks guided by resource contracts. In: Workshop on component-oriented approaches to context-aware systems, pp 1–5

  65. 65.

    Rigole P, Berbers Y, Holvoet T (2004) Mobile adaptive tasks guided by resource contracts. In: Workshop on middleware for pervasive and ad-hoc computing, pp 117–120

  66. 66.

    Rim H, Kim S, Kim Y, Han H (2006) Transparent method offloading for slim execution. In: International symposium on wireless pervasive computing, pp 1–6

  67. 67.

    Rong P, Pedram M (2003) Extending the lifetime of a network of battery-powered mobile devices by remote processing: a markovian decision-based approach. In: Conference on design automation, pp 906–911

  68. 68.

    Rosenblum M, Garfinkel T (2005) Virtual machine monitors: current technology and future trends. IEEE Comput 38(5):39–47

  69. 69.

    Se S, Barfoot T, Jasiobedzki P (2005) Visual motion estimation and terrain modeling for planetary rovers. In: International symposium on artificial intelligence for robotics and automation in space, pp 603–700

  70. 70.

    Seshasayee B, Nathuji R, Schwan K (2007) Energy aware mobile service overlays: cooperative dynamic power management in distributive systems. In: International conference on automatic computing, pp 6–12

  71. 71.

    Sivavakeesar S, Gonzalez OF, Pavlou G (2006) Service discovery strategies in ubiquitous communication environments. IEEE Commun Mag 44(9):106–113

  72. 72.

    Tilevich E, Smaragdakis Y (2006) J-orchestra: automatic Java application partitioning. In: European conference on object-oriented programming, pp 1–3

  73. 73.

    Vaquero LM, Rodero-Merino L, Caceres J, Lindner M (2008) A break in the clouds: towards a cloud definition. ACM SIGCOMM Comput Commun Rev 39(1):50–55

  74. 74.

    Wang C, Li Z (2004) Parametric analysis for adaptive computation offloading. In: ACM SIGPLAN conference on programming language design and implementation, pp 119–130

  75. 75.

    Wang Q, Wang C, Li J, Ren K, Lou W (2010) Enabling public verifiability and data dynamics for storage security in cloud computing. In: European symposium on research in computer security, pp 355–370

  76. 76.

    Wang W, Li Z, Owens R, Bhargava B (2009) Secure and efficient access to outsourced data. In: ACM workshop on cloud computing security, pp 55–66

  77. 77.

    Weinsberg Y, Dolev D, Wyckoff P, Anker T (2007) Accelerating distributed computing applications using a network offloading framework. In: IEEE international parallel and distributed processing symposium, pp 1–10

  78. 78.

    Weiss A (2007) Computing in the clouds. NetWorker 11(4):16–25

  79. 79.

    White JE (1997) Mobile agents. In: Software agents (MIT Press), pp 437–472

  80. 80.

    Wolski R, Gurun S, Krintz C, Nurmi D (2008) Using bandwidth data to make computation offloading decisions. In: IEEE international symposium on parallel and distributed processing, pp 1–8

  81. 81.

    Wong D, Paciorek N, Moore D (1999) Java-based mobile agents. Commun ACM 42(3):92–102

  82. 82.

    Wong D, Paciorek N, Walsh T, DiCelie J, Young M, Peet B (1997) Concordia: an infrastructure for collaborating mobile agents. In: International workshop on mobile agents, pp 86–97

  83. 83.

    Xian C, Lu Y-H, Li Z (2007) Adaptive computation offloading for energy conservation on battery-powered systems. In: International conference on parallel and distributed systems, pp 1–8

  84. 84.

    Yang K, Ou S, Chen H-H (2008) On effective offloading services for resource-constrained mobile devices running heavier mobile internet applications. IEEE communications magazine 46(1):56–63

Download references

Author information

Correspondence to Karthik Kumar.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Kumar, K., Liu, J., Lu, Y. et al. A Survey of Computation Offloading for Mobile Systems. Mobile Netw Appl 18, 129–140 (2013). https://doi.org/10.1007/s11036-012-0368-0

Download citation

Keywords

  • mobile cloud computing
  • computation offloading
  • survey
  • energy
  • performance