Skip to main content
Log in

Performance prediction for supporting mobile applications’ offloading

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Mobile cloud computing (MCC) is a technique for increasing the performance of mobile apps and reducing their energy consumption through code and data offloading. Developers may build MCC applications on a public cloud. The public cloud may offer economies of scale, but there are some considerations to take into account. Cloud providers charge their customers by data traffic, and wrong offloading decisions may lead to financial losses. This paper proposes an approach for estimating applications’ performance, data traffic generated by tasks offloading and its related costs on a public cloud. This work proposes both a stochastic Petri net (SPN)-based formal framework to represent MCC applications in a method-call level and a cost model to predict data traffic volume. Our approach enables designers to plan and tune MCC architectures based on three performance metrics: mean time to execute, cumulative distribution function, and throughput. Our SPN-based framework represents the use and sharing of the bandwidth available for offloading operations as well as the effect of bandwidth variation on the evaluated metrics. It allows a more accurate evaluation by developers about the performance of their applications taking into account specific network requirements, users, and offloading strategies. Two case studies were performed. Our approach has proven to be feasible, and it highlights the most appropriate strategies, supporting developers at design time by providing statistical information about applications’ behavior and costs estimations.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25
Fig. 26

Similar content being viewed by others

Notes

  1. The term “costs” corresponds to financial costs when used in an isolated way.

  2. AWS: https://aws.amazon.com.

  3. Google Cloud Platform: https://cloud.google.com.

  4. Azure: https://azure.microsoft.com.

  5. The practiced values by the IaaS cloud providers may change over time.

  6. BCEL: https://commons.apache.org/proper/commons-bcel/.

  7. MoDCS: http://www.modcs.org/.

  8. More information about the Mercury tool is available on the MoDCS Web site.

  9. 30 days.

References

  1. Amazon ec2 (2017). https://aws.amazon.com/ec2/pricing/. Accessed 22 May 2017

  2. Andrzejak A, Kondo D, Yi S (2010) Decision model for cloud computing under SLA constraints. In: 2010 IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, pp 257–266

  3. Arajo C, Maciel P, Zimmermann A, Andrade E, Sousa E, Callou G, Cunha P (2011) Performability modeling of electronic funds transfer systems. Computing 91(4):315–334

    Article  MathSciNet  Google Scholar 

  4. Araujo J, Silva B, Oliveira D, Maciel P (2014) Dependability evaluation of a mhealth system using a mobile cloud infrastructure. In: 2014 IEEE International Conference on Systems, Man and Cybernetics (SMC). IEEE, pp 1348–1353

  5. Baccarelli E, Cordeschi N, Mei A, Panella M, Shojafar M, Stefa J (2016) Energy-efficient dynamic traffic offloading and reconfiguration of networked data centers for big data stream mobile computing: review, challenges, and a case study. IEEE Network 30(2):54–61. https://doi.org/10.1109/MNET.2016.7437025

    Article  Google Scholar 

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

  7. Bolch G, Greiner S, de Meer H, Trivedi KS (2006) Queueing networks and markov chains: modeling and performance evaluation with computer science applications. Wiley-Interscience, New York

    Book  MATH  Google Scholar 

  8. Callou G, Ferreira J, Maciel P, Tutsch D, Souza R (2014) An integrated modeling approach to evaluate and optimize data center sustainability, dependability and cost. Energies 7(1):238–277

    Article  Google Scholar 

  9. Chang Z, Zhou Z, Ristaniemi T, Niu Z (2017) Energy efficient optimization for computation offloading in fog computing system. In: GLOBECOM 2017—2017 IEEE Global Communications Conference, pp 1–6

  10. Chen S, Wang Y, Pedram M (2014) Optimal offloading control for a mobile device based on a realistic battery model and semi-Markov decision process. In: 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD), pp 369–375

  11. Cordeschi N, Amendola D, Baccarelli E (2015) Reliable adaptive resource management for cognitive cloud vehicular networks. IEEE Trans Veh Technol 64(6):2528–2537

    Article  Google Scholar 

  12. Colour reduction (2015). http://tinyurl.com/pwq8j44. Accessed 28 July 2015

  13. Cordeschi N, Amendola D, Shojafar M, Baccarelli E (2015) Distributed and adaptive resource management in cloud-assisted cognitive radio vehicular networks with hard reliability guarantees. Veh Commun 2(1):1–12

    Article  Google Scholar 

  14. Costa I, Araujo J, Dantas J, Campos E, Silva FA, Maciel P (2015) Availability evaluation and sensitivity analysis of a mobile backend-as-a-service platform. Qual Reliab Eng Int 32:2191–2205

    Article  Google Scholar 

  15. Cuervo E et al (2010) MAUI: making smartphones last longer with code offload. In: Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services, MobiSys ’10, New York, 2010. ACM, pp 49–62

  16. De Sousa ETG, Lins FAA, Tavares EAG, Maciel PRM (2014) Performance and cost modeling strategy for cloud infrastructure planning. In: 2014 IEEE 7th International Conference on Cloud Computing. IEEE, pp 546–553

  17. Desrochers A, Al-Jaar R, Society I C S (1995) Applications of petri nets in manufacturing systems: modeling, control, and performance analysis. IEEE Press, New York

    MATH  Google Scholar 

  18. Dijkstra E (1959) A note on two problems in connexion with graphs. Numer. Math. 1:269–271

    Article  MathSciNet  MATH  Google Scholar 

  19. Dijkstra for android (2016). https://github.com/stewbob/dijkstra/. Accessed 20 Aug 2016

  20. Efron B, Tibshirani R (1993) An introduction to the bootstrap. Chapman and Hall, London

    Book  MATH  Google Scholar 

  21. Gabner R, Schwefel H-P, Hummel K, Haring G (2011) Optimal model-based policies for component migration of mobile cloud services. In: 2011 10th IEEE International Symposium on Network Computing and Applications (NCA), pp 195–202

  22. German R (2000) Performance analysis of communication systems with non-Markovian stochastic petri nets. Wiley, New York

    MATH  Google Scholar 

  23. German R, Kelling C, Zimmermann A, Hommel G (1995) Timenet—a toolkit for evaluating non-Markovian stochastic petri nets. In: Proceedings 6th International Workshop on Petri Nets and Performance Models, pp 210–211

  24. Greatspn (2017). http://www.di.unito.it/~greatspn/index.html. Accessed 28 July 2017

  25. Herzog U (2001) Formal methods for performance evaluation. Springer, Berlin, pp 1–37

    MATH  Google Scholar 

  26. Jasika N, Alispahic N, Elma A, Ilvana K, Elma L, Nosovic N (2012) Dijkstra’s shortest path algorithm serial and parallel execution performance analysis. In: MIPRO, 2012 Proceedings of the 35th International Convention, pp 1811–1815

  27. Javacv (2015). https://github.com/bytedeco/javacv. Accessed 28 July 2015

  28. Kemp R, Palmer N, Kielmann T, Bal H (2012) Cuckoo: a computation offloading framework for smartphones. In: Gris M, Yang G (eds) Mobile computing, applications, and services, vol 76. Lecture notes of the institute for computer sciences, social informatics and telecommunications engineering. Springer, Berlin, pp 59–79

    Chapter  Google Scholar 

  29. Kocjan P, Saeed K (2012) Face recognition in unconstrained environment. In: Saeed K, Nagashima T (eds) Biometrics and Kansei engineering. Springer, New York, pp 21–42

    Chapter  Google Scholar 

  30. Kosta S, Aucinas A (2012) Thinkair: dynamic resource allocation and parallel execution in the cloud for mobile code offloading. In: INFOCOM, 2012 Proceedings IEEE, pp 945–953

  31. Kristensen MD (2010) Scavenger: transparent development of efficient cyber foraging applications. In: 2010 IEEE International Conference on Pervasive Computing and Communications (PerCom), pp 217–226

  32. Kumar K, Lu Y-H (2010) Cloud computing for mobile users: can offloading computation save energy? Computer 43(4):51–56

    Article  Google Scholar 

  33. Kuo W, Zuo MJ (2003) Optimal reliability modeling: principles and applications. Wiley, New York

    Google Scholar 

  34. Li Z, Wang C, Xu R (2001) Computation offloading to save energy on handheld devices: a partition scheme. In: Proceedings of the 2001 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, CASES ’01, New York, NY, 2001. ACM, pp 238–246

  35. Maciel P, Trivedi KS, Matias R, Kim DS (2011) Performance and dependability in service computing: concepts, techniques and research directions. In: Dependability modeling. Premier Reference Source, IgI Global. https://doi.org/10.4018/978-1-60960-794-4.ch003

  36. Marsan MA (1990) Stochastic petri nets: an elementary introduction. In: Rozenberg G (ed) Advances in petri nets. Springer, New York, pp 1–29

    Google Scholar 

  37. Marsan MA, Balbo G, Conte G, Donatelli S, Franceschinis G (1994) Modelling with generalized stochastic petri nets, 1st edn. Wiley, New York

    MATH  Google Scholar 

  38. Microsoft azure (2017). https://azure.microsoft.com/en-us/pricing/details/bandwidth/. Accessed 22 May 2017

  39. Molloy MK (1982) Performance analysis using stochastic petri nets. IEEE Trans Comput 31:913–917

    Article  Google Scholar 

  40. Murata T (1989) Petri nets: properties, analysis and applications. Proc IEEE 77(4):541–580

    Article  Google Scholar 

  41. Nelson R (2013) Probability, stochastic processes, and queueing theory: the mathematics of computer performance modeling. Springer Science & Business Media, Berlin

    Google Scholar 

  42. Nimmagadda Y, Kumar K, Lu Y-H, Lee C (2010) Real-time moving object recognition and tracking using computation offloading. In: 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp 2449–2455

  43. Nurmi D, Wolski R, Grzegorczyk C, Obertelli G, Soman S, Youseff L, Zagorodnov D (2009) The eucalyptus open-source cloud-computing system. In: CCGRID ’09, pp 124–131

  44. Oliveira D, Araujo J, Matos R, Maciel P (2013) Availability and energy consumption analysis of mobile cloud environments. In: 2013 IEEE International Conference on Systems, Man, and Cybernetics (SMC). IEEE, pp 4086–4091

  45. Opencv (2015). http://opencv.org/. Accessed 28 July 2015

  46. Oracle cloud (2017). https://cloud.oracle.com/en_US/storage/pricing. Accessed 22 May 2017

  47. Ou S, Yang K, Liotta A, Hu L (2007) Performance analysis of offloading systems in mobile wireless environments. In: ICC’07. IEEE International Conference on Communications 2007. IEEE, pp 1821–1826

  48. Pandey S, Nepal S (2012) Modeling availability in clouds for mobile computing. In: 2012 IEEE First International Conference on Mobile Services, pp 80–87

  49. Park J, Yu H, Chung K, Lee E (2011) Markov chain based monitoring service for fault tolerance in mobile cloud computing. In: 2011 IEEE Workshops of International Conference on Advanced Information Networking and Applications, pp 520–525

  50. Pathak A, Hu Y, Zhang M, Bahl P, Wang Y (2011) Enabling automatic offloading of resource-intensive smartphone applications. docs.lib.purdue.edu

  51. Petri C (1962) Kommunikation mit Automaten. Schriften des Rheinisch-Westfälischen Institutes für Instrumentelle Mathematik an der Universität Bonn. Rhein.-Westfäl. Inst. f. Instrumentelle Mathematik an der Univ. Bonn

  52. Pokemon go (2016). http://www.pokemongo.com/. Accessed 20 Aug 2016

  53. Rahimi MR, Venkatasubramanian N, Mehrotra S, Vasilakos AV (2012) Mapcloud: Mobile applications on an elastic and scalable 2-tier cloud architecture. In: Proceedings of the 2012 IEEE/ACM Fifth International Conference on Utility and Cloud Computing, UCC ’12, Washington, DC, USA, 2012. IEEE Computer Society, pp 83–90

  54. Ribas M, Furtado C, Barroso G (2015) Modeling the use of spot instances for cost reduction in cloud computing adoption using a petri net framework. In: (IM), 2015 IFIP/IEEE, 2015. Query date: 18 June 2017

  55. Rim H, Kim S, Kim Y, Han H (Jan 2006) Transparent method offloading for slim execution. In: 2006 1st International Symposium on Wireless Pervasive Computing, pp 1–6

  56. Saarinen A, Siekkinen M, Xiao Y, Nurminen JK, Kemppainen M, Hui P (2012) Can offloading save energy for popular apps? In: Proceedings of the Seventh ACM International Workshop on Mobility in the Evolving Internet Architecture, MobiArch ’12, New York, NY, 2012. ACM, pp 3–10

  57. Silva B, Callou G, Tavares E, Maciel P, Figueiredo J, Sousa E, Araujo C, Magnani F, Neves F (2013) Astro: an integrated environment for dependability and sustainability evaluation. Sustain Comput Inform Syst 3(1):1–17

    Google Scholar 

  58. Silva B, Maciel PRM, Zimmermann A, Brilhante J (2014) Survivability evaluation of disaster tolerant cloud computing systems. In: Proceedings of Probabilistic Safety Assessment and Management (PSAM12), Hawaii, USA, p 453. http://psam12.org/proceedings/paper/paper_453_1.pdf

  59. Silva B, Tavares E, Maciel P, Nogueira B, Oliveira J, Damaso A, Rosa N (Oct 2014) Amalghma—an environment for measuring execution time and energy consumption in embedded systems. In: 2014 IEEE International Conference on Systems, Man and Cybernetics (SMC), pp 3364–3369

  60. Silva B, Matos R, Callou G, Figueiredo J, Oliveira D, Ferreir J, Dantas J, Lobo Junior A, Alves V, Maciel P (2015) Mercury: an integrated environment for performance and dependability evaluation of general systems. In: Proceedings of Industrial Track at 45th Dependable Systems and Networks Conference, DSN 2015. IEEE, Rio de Janeiro

  61. Silva FA, Rodrigues M, Maciel P, Kosta S, Mei A (2015) Planning mobile cloud infrastructures using stochastic petri nets and graphic processing units. In: 2015 IEEE 7th International Conference on Cloud Computing Technology and Science (CloudCom). IEEE, pp 471–474

  62. Silva FA, Zaicaner G, Quesado E, Dornelas M, Silva B, Maciel P (2016) Benchmark applications used in mobile cloud computing research: a systematic mapping study. J Supercomput 72:1431–1452

    Article  Google Scholar 

  63. Silva FA, Kosta S, Rodrigues M, Oliveira D, Maciel T, Mei A, Maciel P (2018) Mobile cloud performance evaluation using stochastic models. IEEE Trans Mob Comput 17(5):1134–1147

    Article  Google Scholar 

  64. Soyata T, Muraleedharan R, Funai C, Kwon M, Heinzelman W (2012) Cloud-vision: real-time face recognition using a mobile-cloudlet-cloud acceleration architecture. In: 2012 IEEE Symposium on Computers and Communications (ISCC), pp 000059–000066

  65. Triola M (2004) Elementary statistics, 9th edn. Addison Wesley, Reading

    MATH  Google Scholar 

  66. Trivedi KS (2001) Probability and statistics with reliability, queuing, and computer science applications. Wiley, New York

    MATH  Google Scholar 

  67. Trivedi KS, Sahner R (2009) Sharpe at the age of twenty two. SIGMETRICS Perform. Eval. Rev. 36(4):52–57

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Thiago Felipe da Silva Pinheiro.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

da Silva Pinheiro, T.F., Silva, F.A., Fé, I. et al. Performance prediction for supporting mobile applications’ offloading. J Supercomput 74, 4060–4103 (2018). https://doi.org/10.1007/s11227-018-2414-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-018-2414-6

Keywords

Navigation