skip to main content
research-article

User-Centric Scheduling and Governing on Mobile Devices with big.LITTLE Processors

Published:28 January 2016Publication History
Skip Abstract Section

Abstract

Mobile applications will become progressively more complicated and diverse. Heterogeneous computing architectures like big.LITTLE are a hardware solution that allows mobile devices to combine computing performance and energy efficiency. However, software solutions that conform to the paradigm of conventional fair scheduling and governing are not applicable to mobile systems, thereby degrading user experience or reducing energy efficiency. In this article, we exploit the concept of application sensitivity, which reflects the user’s attention on each application, and devise a user-centric scheduler and governor that allocate computing resources to applications according to their sensitivity. Furthermore, we integrate our design into the Android operating system. The results of experiments conducted on a commercial big.LITTLE smartphone with real-world mobile apps demonstrate that the proposed design can achieve significant gains in energy efficiency while improving the quality of user experience.

References

  1. Luca Abeni and Giorgio Buttazzo. 1998. Integrating multimedia applications in hard real-time systems. In Proc. of IEEE RTSS. 4--13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Luca Abeni and Giorgio Buttazzo. 1999. Adaptive bandwidth reservation for multimedia computing. In Proc. of IEEE RTCSA. 70--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Hakan Aydin, Vinay Devadas, and Dakai Zhu. 2006. System-level energy management for periodic real-time tasks. In Proc. of IEEE RTSS. 313--322. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Luca Benini, Alessandro Bogliolo, and Giovanni De Micheli. 2000. A survey of design techniques for system-level dynamic power management. IEEE Trans. on VLSI Systems 8, 3 (2000), 299--316. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Mingsong Bi, Igor Crk, and Chris Gniady. 2010. IADVS: On-demand performance for interactive applications. In Proc. of IEEE HPCA. 1--10.Google ScholarGoogle ScholarCross RefCross Ref
  6. Abhishek Chandra, Micah Adler, and Prashant Shenoy. 2001. Deadline fair scheduling: Bridging the theory and practice of proportionate fair scheduling in multiprocessor systems. In Proc. of IEEE RTAS. 3--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Yu-Ming Chang, Pi-CHeng Hsiu, Yuan-Hao Chang, and Che-Wei Chang. 2013. A resource-driven DVFS scheme for smart handheld devices. ACM Trans. on Embedded Computer Systems 13, 3 (2013), 53:1--53:22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Jian-Jia Chen, Tei-Wei Kuo, and Chi-Sheng Shih. 2005. (1 + ε) approximation clock rate assignment for periodic real-time tasks on a voltage-scaling processor. In Proc. of ACM EMSOFT. 247--250. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Tommaso Cucinotta, Luigi Palopoli, Luca Marzario, Giuseppe Lipari, and Luca Abeni. 2004. Adaptive reservations in a Linux environment. In Proc. of IEEE RTAS. 238--245. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Vinay Devadas and Hakan Aydin. 2012. On the interplay of voltage/frequency scaling and device power management for frame-based real-time embedded applications. IEEE Trans. on Computers 61, 1 (2012), 31--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Brad K. Donohoo, Chris Ohlsen, and Sudeep Pasricha. 2011. AURA: An application and user interaction aware middleware framework for energy optimization in mobile devices. In Proc. of IEEE ICCD. 168--174. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Hossein Falaki, Ratul Mahajan, and Srikanth Kandula. 2010. Diversity in smartphone usage. In Proc. of ACM MobiSys. 179--193. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Marco E. T. Gerards and Jan Kuper. 2013. Optimal DPM and DVFS for frame-based real-time systems. ACM Trans. on Architecture and Code Optimization 9, 4 (2013), 1--23. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Anders Goransson. 2014. Efficient Android Threading: Asynchronous Processing Techniques for Android Applications (1st ed.). O’Reilly, 29--37.Google ScholarGoogle Scholar
  15. Yan Gu and Samarjit Chakraborty. 2008. Control theory-based DVS for interactive 3D games. In Proc. of IEEE ACM DAC. 740--745. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Selim Gurun and Chandra Krintz. 2005. AutoDVS: An automatic, general-purpose, dynamic clock scheduling system for hand-held devices. In Proc. of IEEE/ACM EMSOFT. 218--226. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Juan Hamers and Lieven Eeckhout. 2012. Exploiting media stream similarity for energy-efficient decoding and resource prediction. ACM Trans. on Embedded Computing Systems 11, 1 (2012), 2:1--2:25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Ralf Herrmann, Piero Zappi, and Tajana Simunic Rosing. 2012. Context aware power management of mobile systems for sensing applications. In Proc. of International Workshop on Mobile Sensing.Google ScholarGoogle Scholar
  19. Tohru Ishihara and Hiroto Yasuura. 1998. Voltage scheduling problem for dynamically variable voltage processors. In Proc. of IEEE ACM ISLPED. 197--202. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Ravindra Jejurikar and Rajesh Gupta. 2004. Dynamic voltage scaling for systemwide energy minimization in real-time embedded systems. In Proc. of IEEE ACM ISLPED. 78--81. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Tong Li, Dan Baumberger, and Scott Hahn. 2009. Efficient and scalable multiprocessor fair scheduling using distributed weighted round-robin. In Proc. of ACM SIGPLAN PPoPP. 65--74. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Chung Laung Liu and James W. Layland. 1973. Scheduling algorithms for multiprogramming in a hard real time environment. Journal of the ACM 20, 1 (1973), 46--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Robert Love. 2010. Linux Kernel Development (3rd ed.). Addison-Wesley Professional, 48--50, 355--357, 361. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Cláudio Maia, Luis Nogueira, and Luis Miguel Pinho. 2010. Evaluating Android OS for embedded real-time systems. In Proc. of OSPERT. 63--70.Google ScholarGoogle Scholar
  25. Pietro Mercati, Andrea Bartolini, Francesco Paterna, Tajana Simunic Rosing, and Luca Benini. 2013. Workload and user experience-aware dynamic reliability management in multicore processors. In Proc. of IEEE ACM DAC. 1--6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Pietro Mercati, Andrea Bartolini, Francesco Paterna, Tajana Simunic Rosing, and Luca Benini. 2014. A Linux-governor based dynamic reliability manager for Android mobile devices. In Proc. of IEEE ACM DATE. 1--4. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Bren C. Mochocki, Kanishka Lahiri, Srihari Cadambi, and Xiaobo Sharon Hu. 2006. Signature-based workload estimation for mobile 3D graphics. In Proc. of IEEE ACM DAC. 592--597. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Almir Mutapcic, Stephen Boyd, Srinivasan Murali, David Atienza, Giovanni De Micheli, and Rajesh Gupta. 2009. Processor speed control with thermal constraints. IEEE Trans. on Circuits and Systems I: Regular Papers 56, 9 (2009), 1994--2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Venkatesh Pallipadi and Alexey Starikovskiy. 2006. The ondemand governor: Past, present, and future. In Proc. of Linux Symposium, Vol. 2. 223--238.Google ScholarGoogle Scholar
  30. Johan Pouwelse, Koen Langendoen, and Henk Sips. 2001. Dynamic voltage scaling on a low-power microprocessor. In Proc. of ACM MobiCom. 251--259. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Gang Quan and Xiaobo Sharon Hu. 2007. Energy efficient DVS schedule for fixed-priority real-time systems. ACM Trans. on Embedded Computing Systems 6, 4 (2007), 29:1--29:31. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Vanessa Romero Segovia, Karl-Erik Årzén, Stefan Schorr, Raphael Guerra, Gerhard Fohler, Johan Eker, and Harald Gustafsson. 2010. Adaptive resource management framework for mobile terminals - the ACTORS approach. In Proc. of WARM.Google ScholarGoogle Scholar
  33. Abraham Silberschatz, Peter B. Galvin, and Greg Gagne. 2010. Operating System Concepts (8th ed.). John Wiley & Sons, 196--199.Google ScholarGoogle Scholar
  34. Amit Kumar Singh, Anup Das, and Akash Kumar. 2013. Energy optimization by exploiting execution slacks in streaming applications on multiprocessor systems. In Proc. of IEEE ACM DAC. 1--7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Niraj Tolia, David G. Andersen, and M. Satyanarayanan. 2006. Quantifying interactive user experience on thin clients. IEEE Trans. on Computer 39, 3 (2006), 46--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Po-Hsien Tseng, Pi-Cheng Hsiu, Chin-Chiang Pan, and Tei-Wei Kuo. 2014. User-centric energy-efficient scheduling on multi-core mobile devices. In Proc. of IEEE ACM DAC. 1--6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Yi-Hung Wei, Chuan-Yue Yang, Tei-Wei Kuo, Shih-Hao Hung, and Yuan-Hua Chu. 2010. Energy-efficient eeal-time scheduling of multimedia tasks on multicore processors. In Proc. of ACM SAC. 258--262. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Le Yan, Lin Zhong, and Niraj K. Jha. 2005. User-perceived latency driven voltage scaling for interactive applications. In Proc. of IEEE ACM DAC. 624--627. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Chuan-Yue Yang, Jian-Jia Chen Chen, and Tei-Wei Kuo. 2005. An approximation algorithm for energy-efficient scheduling on a chip multiprocessor. In Proc. of IEEE ACM DATE. 468--473. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Frances Yao, Alan Demers, and Scott Shenker. 1995. A scheduling model for reduced CPU energy. In Proc. of IEEE FOCS. 374--382. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Yumin Zhang, Xiaobo Sharon Hu, and Danny Z. Chen. 2002. Task scheduling and voltage selection for energy minimization. In Proc. of IEEE ACM DAC. 183--188. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. User-Centric Scheduling and Governing on Mobile Devices with big.LITTLE Processors

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!