Towards native code offloading based MCC frameworks for multimedia applications: A survey

Journal of Network and Computer Applications - Tập 75 - Trang 335-354 - 2016
Junaid Shuja1, Abdullah Gani1, Muhammad Habib ur Rehman2, Ejaz Ahmed1, Sajjad A. Madani3, Muhammad Khurram Khan4, Kwangman Ko5
1Centre for Mobile Cloud Computing Research (C4MCCR), FSKTM, University of Malaya, Malaysia
2Faculty of Computer Science and Information Technology, University of Malaya, Malaysia
3COMSATS Institute of Information Technology, Islamabad
4Center of Excellence in Information Assurance (CoEIA), King Saud University, Riyadh, Saudi Arabia
5School of Computer and Information Engineering, Sangji University, Republic of South Korea

Tài liệu tham khảo

Abadal, 2016, Characterization and modeling of multicast communication in cache-coherent manycore processors, Comput. Electr. Eng., 51, 168, 10.1016/j.compeleceng.2015.12.018 Ahmad, 2015, A review on mobile application energy profiling: taxonomy, state-of-the-art, and open research issues, J. Netw. Comput. Appl., 58, 42, 10.1016/j.jnca.2015.09.002 Ahmad, 2015, A survey on virtual machine migration and server consolidation frameworks for cloud data centers, J. Netw. Comput. Appl., 52, 11, 10.1016/j.jnca.2015.02.002 Ahmed, 2015, Seamless application execution in mobile cloud computing: motivation, taxonomy, and open challenges, J. Netw. Comput. Appl., 52, 154, 10.1016/j.jnca.2015.03.001 Ahmed, 2015, Application optimization in mobile cloud computing: motivation, taxonomies, and open challenges, J. Netw. Comput. Appl., 52, 52, 10.1016/j.jnca.2015.02.003 ARM Limited, 2009. Introducing neon development article, ARM Holdings, Technical Report. Balan, R.K., Gergle, D., Satyanarayanan, M., Herbsleb, J., 2007. Simplifying cyber foraging for mobile devices. In: Proceedings of the 5th International Conference on Mobile Systems, (applications and services). ACM, pp. 272–285. Bellard, 2005. Qemu, a fast and portable dynamic translator. In: USENIX Annual Technical Conference, FREENIX Track, pp. 41–46. Binkert, 2011, The gem5 simulator, ACM SIGARCH Comput. Archit. News, 39, 1, 10.1145/2024716.2024718 Binkert, 2006, The m5 simulator: modeling networked systems, IEEE Micro, 4, 52, 10.1109/MM.2006.82 Burnette, E., 2009. Hello, Android: introducing Google's mobile development platform. Pragmatic Bookshelf. Butko, A., Garibotti, R., Ost, L., Lapotre, V., Gamatie, A., Sassatelli, A., Adeniyi-Jones, C., 2015. A trace-driven approach for fast and accurate simulation of manycore architectures. In: Design Automation Conference (ASP-DAC), 2015 20th Asia and South Pacific. IEEE, pp. 707–712. Chun, B.-G., Ihm, S., Maniatis, P., Naik, M., Patti, A., 2011. Clonecloud: elastic execution between mobile device and cloud. In: Proceedings of the Sixth Conference On Computer Systems. ACM, pp. 301–314. Cisco, 2015. Cisco visual networking index: global mobile data traffic forecast update, 20152020, Sisco, Technical Report. Clark, N., Hormati, A., Yehia, S., Mahlke, S., Flautner, K., 2007. Liquid simd: Abstracting simd hardware using lightweight dynamic mapping. In: High Performance Computer Architecture, 2007, HPCA 2007, IEEE 13th International Symposium on IEEE, pp. 216–227. Cooper, P., Dolinsky, U., Donaldson, A.F., Richards, A., Riley, C., Russell, G., 2010. Offload–automating code migration to heterogeneous multicore systems. In: High Performance Embedded Architectures and Compilers. Springer, pp. 337–352. Cuervo, E., Balasubramanian, A., Cho, D.-K., 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. Dabbagh, 2015, Energy-efficient resource allocation and provisioning framework for cloud data centers, IEEE Trans. Netw. Serv. Manag., 12, 377, 10.1109/TNSM.2015.2436408 Dabbagh, 2014, Fast dynamic internet mapping, Future Gener. Comput. Syst., 39, 55, 10.1016/j.future.2014.04.006 Dall, 2014, Kvm/arm: the design and implementation of the linux arm hypervisor, ACM SIGARCH Comput. Archit. News, 42, 333, 10.1145/2654822.2541946 DeVuyst, 2012, Execution migration in a heterogeneous-isa chip multiprocessor, ACM SIGARCH Comput. Archit. News, 40, 261, 10.1145/2189750.2151004 Ding, J.-H., Chang, P.-C., Hsu, W.-C., Chung, Y.-C., 2011. Pqemu: A parallel system emulator based on qemu. In: Parallel and Distributed Systems (ICPADS), 2011 (IEEE) 17th International Conference on (IEEE), pp. 276–283. Eskandari, N., Madani, H., Ahmadzadeh, A., Aznaveh, M.M., Gorgin, S., 2014. A fast emulator for arm-based embedded systems. In: Formal Methods and Models for Codesign (MEMOCODE), 2014 Twelfth ACM/IEEE International Conference on IEEE, 2014, pp. 190–193. Est´erie, P., Falcou, J., Gaunard, M., Laprest´e, J.-T., 2014. Boost. simd: generic programming for portable simdization. In: Proceedings of the 2014 Workshop on Programming models for SIMD/Vector processing. ACM, pp. 1–8. Fellows, 2014 Figueira, 2014, Hybrid simulation–optimization methods: a taxonomy and discussion, Simul. Model. Pract. Theory, 46, 118, 10.1016/j.simpat.2014.03.007 Flores, 2015, Mobile code offloading: from concept to practice and beyond, Commun. Mag. IEEE, 53, 80, 10.1109/MCOM.2015.7060486 Fu, S.-Y., Wu, J.-J., Hsu, W.-C., 2015a. Improving simd code generation in qemu. In: Proceedings of the 2015 Design, Automation & Test in Europe Conference & Exhibition. EDA Consortium, pp. 1233–1236. Fu, S.-Y., Wu, J.-J., Liu, P., Hong, D.-Y., Hsu, W.-C., 2015b. Simd code translation in an enhanced hqemu. In: IEEE International Conference on Parallel and Distributed Systems (ICPADS). Gandhewar, 2010, Google android: an emerging software platform for mobile devices, Int. J. Comput. Sci. Eng., 1, 12 Genymotion, 2016. [Online] Available: 〈https://www.genymotion.com/〉 Guo, 2015, Accelerating architectural simulation via statistical techniques: a survey, IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst., 35, 433, 10.1109/TCAD.2015.2481796 Guo, Y.-C., Yang, W., Chen, J.-Y., Lee, J.-K., 2016. Translating the arm neon and vfp instructions in a binary translator. Software: Practice and Experience. Ha, K., Pillai, P., Lewis, G., Simanta, S., Clinch, S., Davies, N., Satyanarayanan, M., 2013. The impact of mobile multimedia applications on data center consolidation, in: Cloud Engineering (IC2E), 2013 IEEE International Conference on IEEE, pp. 166–176. Hong, D.-Y., Hsu, C.-C., Yew, P.-C., Wu, J.-J., Hsu, W.-C., Liu, P., Wang, C.-M., Chung, Y.-C., 2012. Hqemu: a multi-threaded and retargetable dynamic binary translator on multicores. In: Proceedings of the Tenth International Symposium on Code Generation and Optimization, pp. 104–113. Hsu, 2015, A dynamic binary translation system in a client/server environment, J. Syst. Archit., 61, 307, 10.1016/j.sysarc.2015.05.002 Huang, H., 2011. Idisa+: A Portable Model for High Performance simd Programming, (Ph.D. Dissertation), Simon Fraser University. Jang, M., Kim, K., Kim, K., 2011. The performance analysis of arm neon technology for mobile platforms. In: Proceedings of the 2011 ACM Symposium on Research in Applied Computation. ACM, pp. 104–106. Jararweh, 2014, Scalable cloudlet-based mobile computing model, Procedia Comput. Sci., 34, 434, 10.1016/j.procs.2014.07.051 Jararweh, Y., Tawalbeh, L., Ababneh, F., Dosari, F., 2013. Resource efficient mobile computing using cloudlet infrastructure. In: Mobile Ad-hoc and Sensor Networks (MSN), 2013 IEEE Ninth International Conference on IEEE, pp. 373–377. Jiang, W., Mei, C., Huang, B., Li, J., Zhu, J., Zang, B., Zhu, C., 2005. Boosting the performance of multimedia applications using simd instructions. In: Compiler Construction. Springer, pp. 59–75. Khan, 2015, A cloud-manager-based re-encryption scheme for mobile users in cloud environment: a hybrid approach, J. Grid Comput., 13, 651, 10.1007/s10723-015-9352-9 Khan, 2014, A survey of mobile cloud computing application models, Commun. Surv. Tutor. IEEE, 16, 393, 10.1109/SURV.2013.062613.00160 Khan, 2015, A survey of computation offloading strategies for performance improvement of applications running on mobile devices, J. Netw. Comput. Appl., 56, 28, 10.1016/j.jnca.2015.05.018 Kim, Y.-J., Cho, S.-J., Kim, K.-J., Hwang, E.-H., Yoon, S.-H., Jeon, J.-W., 2012. Benchmarking java application using jni and native c application on android. In: Control, Automation and Systems (ICCAS), 2012 12th International Conference on 2012, pp. 284–288. 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: INFOCOM, 2012 Proceedings IEEE. IEEE, pp. 945–953. Koukoumidis, 2011, Pocket cloudlets, ACM SIGARCH Comput. Archit. News, 39, 171, 10.1145/1961295.1950387 Kristof, P., Yu, H., Li, Z., Tian, X., 2012. Performance study of simd programming models on intel multicore processors. In: Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2012 IEEE 26th International. IEEE, pp. 2423–2432. Kumar, 2010, Cloud computing for mobile users: can offloading computation save energy?, Computer, 4, 51, 10.1109/MC.2010.98 Kutil, R., 2008. Parallelization of iir filters using simd extensions. In: Systems, Signals and Image Processing, 2008. IWSSIP 2008. 15th International Conference on IEEE, pp. 65–68. Le, V., Gulwani, S., Su, Z., 2013. Smartsynth: Synthesizing smartphone automation scripts from natural language. In: Proceeding of the 11th Annual International Conference On Mobile Systems, Applications, and Services, ACM, pp. 193–206. Lee, G., Park, H., Heo, S., Chang, K.-A., Lee, H., Kim, H., 2015. Architecture-aware automatic computation offload for native applications. In: Proceedings of the 48th International Symposium on Microarchitecture, ACM, pp. 521–532. Lee, S., Jeon, J.W., 2010. Evaluating performance of android platform using native c for embedded systems. In: Control Automation and Systems (ICCAS), 2010 International Conference on. IEEE, pp. 1160–1163. Li, J., Zhang, Q., Xu, S., Huang, B., 2006. Optimizing dynamic binary translation for simd instructions. In: Proceedings of the International Symposium on Code Generation and Optimization, IEEE Computer Society, pp. 269–280. Liaqat, M., Ninoriya, S., Shuja, J., Ahmad, R.W., Gani, A., 2016. Virtual Machine Migration Enabled Cloud Resource Management: A Challenging Task, arXiv preprint arXiv:1601.03854. Lomont, C., 2011. Introduction to intel advanced vector extensions. Intel White Paper. Maleki, S., Gao, Y., Garzaran, M.J., Wong, T., Padua, D.A., 2011. An evaluation of vectorizing compilers. In: Parallel Architectures and Compilation Techniques (PACT), 2011 International Conference on IEEE, pp. 372–382. Manilov, S., Franke, B., Magrath, A., Andrieu, C., 2015. Free rider: a tool for retargeting platform-specific intrinsic functions. In: Proceedings of the 16th ACM SIGPLAN/SIGBED Conference on Languages, Compilers and Tools for Embedded Systems 2015 CD-ROM. ACM, p. 5. Martin, 2005, Multifacet's general execution-driven multiprocessor simulator (gems) toolset, ACM SIGARCH Comput. Archit. News, 33, 92, 10.1145/1105734.1105747 Michel, L., Fournel, N., et al., 2011. Speeding-up simd instructions dynamic binary translation in embedded processor simulation. In: Design, Automation & Test in Europe Conference & Exhibition (DATE), IEEE, pp. 1–4. Mitra, G., Johnston, B., Rendell, A.P., McCreath, E., Zhou, J., 2013. Use of simd vector operations to accelerate application code performance on low-powered arm and intel platforms. In: Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2013 IEEE 27th International, pp. 1107–1116. Mohammad, 2015, Amcc: ad-hoc based mobile cloud computing modeling, Procedia Comput. Sci., 56, 580, 10.1016/j.procs.2015.07.257 Moore, 2009, Addressing the challenges of DBT for the arm architecture, ACM Sigplan Not., 44, 147, 10.1145/1543136.1542472 Nimmakayala, S.T., 2015. Exploring causes of performance overhead during dynamic binary translation (Ph.D. Dissertation). University of Kansas, 2015. Niu, 2014, Bandwidth-adaptive partitioning for distributed execution optimization of mobile applications, J. Netw. Comput. Appl., 37, 334, 10.1016/j.jnca.2013.03.007 Nuzman, D., Dyshel, S., Rohou, E., Rosen, I., Williams, K., Yuste, D., Cohen, A., Zaks, A., 2011. Vapor simd: Auto-vectorize once, run everywhere. In: Proceedings of the 9th Annual IEEE/ACM International Symposium on Code Generation and Optimization. IEEE Computer Society, pp. 151–160. Parthasarathy, V., Rhymend Uthariaraj, V., 2005. Performance analysis of embedded media applications in newer arm architectures. In: Parallel Processing, 2005. ICPP 2005 Workshops. International Conference Workshops on IEEE, 2005, pp. 210–214. Penneman, 2016, Evaluation of dynamic binary translation techniques for full system virtualisation on armv7-a, J. Syst. Archit., 65, 30, 10.1016/j.sysarc.2016.03.001 Rajan, M., Doerfler, D., Tupek, M., Hammond, S., 2015. An investigation of compiler vectorization on current and next-generation intel processors using benchmarks and sandias sierra applications, at CUG. Rehman, 2015, Mining personal data using smartphones and wearable devices: a survey, Sensors, 15, 4430, 10.3390/s150204430 Satyanarayanan, 2015, A brief history of cloud offload: a personal journey from odyssey through cyber foraging to cloudlets, ACM SIGMOBILE Mob. Comput. Commun. Rev., 18, 19 Satyanarayanan, 2009, The case for vm-based cloudlets in mobile computing, Pervasive Comput. IEEE, 8, 14, 10.1109/MPRV.2009.82 Satyanarayanan, 2015, An open ecosystem for mobile-cloud convergence, Commun. Mag. IEEE, 53, 63, 10.1109/MCOM.2015.7060484 Seifaddini, O., Abdullah, A., Hussin, M., Muhammed, A., 2014. Performance assessment of mobile computation offloading. In: Information and Communication Technologies (WICT), 2014 Fourth World Congress on IEEE, pp. 129–133. Shaukat, 2016, Cloudlet deployment in local wireless networks: motivation, architectures, applications, and open challenges, J. Netw. Comput. Appl., 62, 18, 10.1016/j.jnca.2015.11.009 Shen, 2014, A retargetable static binary translator for the arm architecture, ACM Trans. Archit. Code Optim., 11, 18, 10.1145/2629335 Shojafar, 2016, Energy-efficient adaptive resource management for real-time vehicular cloud services, IEEE Trans. Cloud Comput., PP Shojafar, M., Cordeschi, N., Abawajy, J.H., Baccarelli, E., 2015. Adaptive energy-efficient qos-aware scheduling algorithm for tcp/ip mobile cloud. In: 2015 IEEE Globecom Workshops (GC Wkshps). IEEE, pp. 1–6. Shuja, 2014, Data center energy efficient resource scheduling, Clust. Comput., 17, 1265, 10.1007/s10586-014-0365-0 Shuja, 2016, Sustainable cloud data centers: a survey of enabling techniques and technologies, Renew. Sustain. Energy Rev., 62, 195, 10.1016/j.rser.2016.04.034 Shuja, 2016, Case of ARM emulation optimization for offloading mechanisms in mobile cloud computing, Future Gener. Comput. Syst. Shuja, 2012, Energy-efficient data centers, Computing, 94, 973, 10.1007/s00607-012-0211-2 Shuja, 2016, Survey of techniques and architectures for designing energy-efficient data centers, Syst. J. IEEE, 10, 507, 10.1109/JSYST.2014.2315823 Shuja, 2016, A survey of mobile device virtualization: taxonomy and state of the art, ACM Comput. Surv., 49, 10.1145/2897164 Shuja, J., Gani, A., Madani, S.A., 2014. A qualitative comparison of mp-soc mobile and embedded virtualization techniques. In: International Conference of Global Network for Innovative Technology (IGNITE-2014), Penang, Malaysia. TUT-USM, December 2014. Sironi, M., Tisato, F., 2013. Capturing information flows inside android and qemu environments, arXiv preprint arXiv:1302.5109, p. 201. Smart, 2014, Fully homomorphic simd operations, Des. Codes Cryptogr., 71, 57, 10.1007/s10623-012-9720-4 Song, Y., Wang, H., Soyata, T., 2015. Hardware and software aspects of vm-based mobile-cloud offloading. Enabling Real-Time Mobile Cloud Computing through Emerging Technologies, pp. 247–271. Statista, Facts and statistics about cloud computing, 2015. [Online] Available: 〈http://www.statista.com/topics/1695/cloud-computing/〉 Tam, K., Khan, S.J., A. Fattori, Cavallaro, L., 2015. Copperdroid: automatic reconstruction of android malware behaviors. In: NDSS. Wang, 2013, Adaptive mobile cloud computing to enable rich mobile multimedia applications, Multimed. IEEE Trans., 15, 870, 10.1109/TMM.2013.2240674 Wang, 2011, Coremu: a scalable and portable parallel full-system emulator, ACM SIGPLAN Not., 46, 213, 10.1145/2038037.1941583 Whaiduzzaman, M., Naveed, A., Gani, A., 2016. Mobicore: Mobile device based cloudlet resource enhancement for optimal task response. In: IEEE Transactions on Services Computing, vol. PP, no. 99, pp. 1–1, 2016. Wu, 2015, Establishing a personal on-demand execution environment for mobile cloud applications, Mob. Netw. Appl., 20, 297, 10.1007/s11036-015-0617-0 Xu, 2013, A survey of mobile cloud computing for rich media applications, IEEE Wirel. Commun., 20 Yousafzai, 2016, Directory-based incentive management services for ad-hoc mobile clouds, Int. J. Inf. Manag., 36, 900, 10.1016/j.ijinfomgt.2016.05.019 Zhang, 2016, A survey on decision making for task migration in mobile cloud environments, Pers. Ubiquitous Comput., 20, 295, 10.1007/s00779-016-0915-y Zhang, L., Biwana, T., Qian, Z., Wang, Z., Dick, R.P., Mao, Z.M., Yang, L., 2010. Accurate online power estimation and automatic battery behavior based power model generation for smartphones. In: Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis. ACM, pp. 105–114. Zhang, X., Guo, Q., Chen, Y., Chen, T., Hu, W., 2015. Hermes: a fast cross-isa binary translator with post-optimization. In: Proceedings of the 13th Annual IEEE/ACM International Symposium on Code Generation and Optimization. IEEE Computer Society, pp. 246–256. Zhao, 2012, Formalizing the llvm intermediate representation for verified program transformations, ACM SIGPLAN Not., 47, 427, 10.1145/2103621.2103709 Zhu, 2011, Multimedia cloud computing, Signal Process. Mag. IEEE, 28, 59, 10.1109/MSP.2011.940269