Abstract
Cyber foraging is an important method to enable resource-constrained mobile devices to perform applications in different mobile cloud computing environments to improve performance and to save energy consumption. This paper focuses on the decision problem about how to offload computation-intensive applications in mobile ad hoc network-based cloud computing environments. A set of online and batch scheduling heuristics were proposed to offload dynamically arriving independent tasks among mobile nodes. The heuristics were validated in a simulation environment, and their performances with respect to both user-centric and system-centric metrics such as the average makespan, the average waiting time, the average slowdown and the average utilization, were investigated with comprehensive experiments. Experimental results show that it is not appropriate to map tasks only based on the expected bandwidth, execution time or the overall offloading time, On the contrary, the expected completion time must be taken into account. Furthermore, the MCTComm heuristic seems to be the best choice from the standpoint of the tradeoff between the complexity and the performance.
Similar content being viewed by others
References
Abolfazli S, Sanaei Z, Gani A, Xia F, Yang LT (2014) Rich mobile applications: genesis, taxonomy, and open issues. J Netw Comput Appl 40:345–362
Balan R, Flinn J, Satyanarayanan M, Sinnamohideen S, Yang H-I (2002) The case for cyber foraging. In: Proceedings of the 10th workshop on ACM SIGOPS European workshop. ACM, pp 87–92
Mtibaa A, Snober MA, Carelli A, Beraldi R, Alnuweiri H (2014) Collaborative mobile-to-mobile computation offloading. In: 2014 international conference on collaborative computing: networking, applications and worksharing. IEEE, pp 460–465
Fahim A, Mtibaa A, Harras KA (2013) Making the case for computational offloading in mobile device clouds. In: Proceedings of the 19th annual international conference on Mobile computing and networking. ACM, pp 203–205
Shires D, Henz B, Park S, Clarke J (2012) Cloudlet seeding: spatial deployment for high performance tactical clouds. In: The 2012 international conference on parallel and distributed processing techniques and applications. CSREA Press, pp 1–7
Saeid A, Zohreh S, Abdullah G (2012) Mobile cloud computing: a review on smartphone augmentation approaches. arXiv preprint arXiv:1205.0451
Abolfazli S, Sanaei Z, Ahmed E, Gani A, Buyya R (2014) Cloud-based augmentation for mobile devices: motivation, taxonomies, and open challenges. IEEE Commun Surveys Tutorials 16(1):337–368
Sharifi M, Kafaie S, Kashefi O (2012) A survey and taxonomy of cyber foraging of mobile devices. IEEE Commun Surveys Tutorials 14(4):1232–1243
Kristensen MD, Bouvin NO (2010) Scheduling and development support in the scavenger cyber foraging system. Pervasive Mobile Comput 6(6):677–692
Shi C, Lakafosis V, Ammar MH, Zegura EW (2012) Serendipity: enabling remote computing among intermittently connected mobile devices. In: Proceedings of the thirteenth ACM international symposium on mobile ad hoc networking and computing. ACM, pp 145–154
De Falco I, Scafuri U, Tarantino E (2014) Two new fast heuristics for mapping parallel applications on cloud computing. Future Gener Comput Syst 37:1–13
Gao B, He L, Liu L, Li K, Jarvis SA (2012) From mobiles to clouds: developing energy-aware offloading strategies for workflows. In: Proceedings of the 2012 ACM/IEEE 13th international conference on grid computing. IEEE Computer Society, pp 139–146
Maheswaran M, Ali S, Siegal HJ, Hensgen D, Freund RF (1999) Dynamic matching and scheduling of a class of independent tasks onto heterogeneous computing systems. In: Eighth heterogeneous computing workshop. IEEE, pp 30–44
Braun TD, Siegel HJ, Beck N, Bölöni LL, Maheswaran M, Reuther AI, Robertson JP, Theys MD, Yao B, Hensgen D et al (2001) A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems. J Parallel Distrib Comput 61(6):810–837
Satyanarayanan M, Bahl P, Caceres R, Davies N (2009) The case for vm-based cloudlets in mobile computing. IEEE Pervasive Comput 8(4):14–23
Cuervo E, Balasubramanian A, Cho D, Wolman A, Saroiu S, Chandra R, Bahl P (2010) Maui: making smartphones last longer with code offload. In: Proceedings of the 8th international conference on mobile systems, applications, and services. ACM, pp 49–62
Gordon MS, Jamshidi DA, Mahlke SA, Mao ZM, Chen X (2012) Comet: code offload by migrating execution transparently. In: 10th USENIX symposium on operating systems design and implementation. USENIX, pp 93–106
Kosta S, Aucinas A, Hui P, Mortier R, Zhang X (2012) Thinkair: dynamic resource allocation and parallel execution in the cloud for mobile code offloading. In: 2012 Proceedings IEEE INFOCOM. IEEE, pp 945–953
Satyanarayanan M, Lewis G, Morris E, Simanta S, Boleng J, Ha K (2013) The role of cloudlets in hostile environments. IEEE Pervasive Comput 12(4):40–49
McGilvary GA (2014) Ad hoc cloud computing. PhD thesis, University of Edinburgh
Meilander D, Glinka F, Gorlatch S, Lin L, Zhang W, Liao X (2014) Using mobile cloud computing for real-time online applications. In: 2014 2nd IEEE international conference on mobile cloud computing, services, and engineering (mobilecloud). IEEE, pp 48–56
Whaiduzzaman M, Sookhak M, Gani A, Buyya R (2014) A survey on vehicular cloud computing. J Netw Comput Appl 40:325–344
Shi C, Ammar MH, Zegura EW, Naik M (2012) Computing in cirrus clouds: the challenge of intermittent connectivity. In: Proceedings of the first edition of the MCC workshop on mobile cloud computing. ACM, pp 23–28
Shiraz M, Gani A (2014) A lightweight active service migration framework for computational offloading in mobile cloud computing. J Supercomput 68(2):978–995
Shumao O, Yang K, Zhang J (2007) An effective offloading middleware for pervasive services on mobile devices. Pervasive Mobile Comput 3(4):362–385
Shiraz M, Ahmed E, Gani A, Han Q (2014) Investigation on runtime partitioning of elastic mobile applications for mobile cloud computing. J Supercomput 67(1):84–103
Verbelen T, Stevens T, De Turck F, Dhoedt B (2013) Graph partitioning algorithms for optimizing software deployment in mobile cloud computing. Future Gener Comput Syst 29(2):451–459
Shah SC, Chauhdary SH, Park M-S et al (2012) An effective and robust two-phase resource allocation scheme for interdependent tasks in mobile ad hoc computational grids. J Parallel Distrib Comput 72(12):1664–1679
Shah SC (2015) Energy efficient and robust allocation of interdependent tasks on mobile ad hoc computational grid. Concurr Comput Practice Exp 27(5):1226–1254
Eom H, Juste PS, Figueiredo R, Tickoo O, Illikkal R, Iyer R (2013) Machine learning-based runtime scheduler for mobile offloading framework. In: Proceedings of the 2013 IEEE/ACM 6th international conference on utility and cloud computing. IEEE Computer Society, pp 17–25
Shi C, Pandurangan P, Ni K, Yang J, Ammar M, Naik M, Zegura E (2013) Ic-cloud: computation offloading to an intermittently-connected cloud. Technical report, Georgia Institute of Technology
Balakrishnan P, Tham C-K (2013) Energy-efficient mapping and scheduling of task interaction graphs for code offloading in mobile cloud computing. In: Proceedings of the 2013 IEEE/ACM 6th international conference on utility and cloud computing. IEEE Computer Society, pp 34–41
Broch J, Maltz DA, Johnson DB, Hu Y-C, Jetcheva J (1998) A performance comparison of multi-hop wireless ad hoc network routing protocols. In: Proceedings of the 4th annual ACM/IEEE international conference on mobile computing and networking. ACM, pp 85–97
Sarr C, Chaudet C, Chelius G, Lassous IG (2008) Bandwidth estimation for IEEE 802.11-based ad hoc networks. IEEE Trans Mobile Comput 7(10):1228–1241
Chen L (2005) Qos-aware routing based on bandwidth estimation for mobile ad hoc networks. IEEE J Select Areas Commun 23(3):561–572
Li J, Blake C, De Couto DSJ, Lee HI, Morris R (2001) Capacity of ad hoc wireless networks. In: Proceedings of the 7th annual international conference on mobile computing and networking. ACM, pp 61–69
Casteigts A, Flocchini P, Quattrociocchi W, Santoro N (2012) Time-varying graphs and dynamic networks. Int J Parallel Emerg Distrib Syst 27(5):387–408
Camp T, Boleng J, Davies V (2002) A survey of mobility models for ad hoc network research. Wireless Commun Mobile Comput 2(5):483–502
Octava networks toolbox. https://github.com/aeolianine/octave-networks-toolbox
Geekbench browser. http://browser.primatelabs.com
Geek2mips. http://www.frc.ri.cmu.edu/hpm/book97/ch3/processor.list.txt
Acknowledgments
This work is partially supported by the Applied Basic Research Project of Yunnan Province (2013FB009, 2013FB010) and theSpecial Funds for Middle-aged and Young Core Instructor Training Program of Yunnan University.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Li, B., Pei, Y., Wu, H. et al. Heuristics to allocate high-performance cloudlets for computation offloading in mobile ad hoc clouds. J Supercomput 71, 3009–3036 (2015). https://doi.org/10.1007/s11227-015-1425-9
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-015-1425-9