skip to main content
research-article

Application-Aware Swapping for Mobile Systems

Authors Info & Claims
Published:27 September 2017Publication History
Skip Abstract Section

Abstract

There has been a constant demand for memory in modern mobile systems to provide users with better experience. Swapping is one of the cost-effective software solutions to provide extra usable memory by reclaiming inactive pages and improving memory utilization. However, swapping has not been actively adopted to mobile systems since it incurs a significant amount of I/O, which in fact impairs system performance as well as user experience.

In this paper, we propose a novel scheme to properly harness the swapping to mobile systems. We identify that a vast amount of I/O for swapping comes from the conflict of the traditional page-level approach of the swapping and the process-level memory management scheme tailored to mobile systems. Moreover, we find out that the current victim page selection policy is not effective due to the process-level policy. To address these problems, we revise the victim selection policy to resolve the conflict and to selectively perform swapping according to the efficacy of swapping. Evaluation using a running prototype with realistic workloads indicates that the propose scheme effectively reduces the paging traffic, thereby improving user experience as well as energy consumption.

References

  1. Android. 2013. http://www.android.com. (August 2013).Google ScholarGoogle Scholar
  2. Android. 2013. Android Debug Bridge (ADB). http://developer.android.com/tools/help/adb.html. (September 2013).Google ScholarGoogle Scholar
  3. Android. 2013. Managing the Activity Lifecycle. http://developer.android.com/training/basics/activity-lifecycle/index.html. (October 2013).Google ScholarGoogle Scholar
  4. Android. 2014. Low RAM. https://source.android.com/devices/tech/low-ram.html. (2014).Google ScholarGoogle Scholar
  5. Apple, Inc. 2013. Apple iOS 7. http://www.apple.com/ios. (2013).Google ScholarGoogle Scholar
  6. Anderson Farias Briglia, Allan Bezerra, Leonid Moiseichuk, and Nitin Gupta. 2007. Evaluating effects of cache memory compression on embedded systems. In Proceedings of the 2007 Ottawa Linux Symposium (OLS’07). 53--64.Google ScholarGoogle Scholar
  7. Richard W. Carr. 1984. Virtual Memory Management. UMI Research Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Aaron Carroll and Gernot Heiser. 2010. An Analysis of Power Consumption in a Smartphone. In Proceedings of the 2010 USENIX Annual Technical Conference (USENIX ATC’10). 21--35. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Aaron Carroll and Gernot Heiser. 2013. The Systems Hacker’s Guide to the Galaxy: Energy Usage in a Modern Smartphone. In Proceedings of the 4th ACM SIGOPS Asia-Pacific Workshop on Systems (APSys’13). Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. David Chu, Aman Kansal, Jie Liu, and Feng Zhao. 2011. Mobile apps: it’s time to move up to CondOS. In Proceedings of the 13th USENIX Conference on Hot Topics in Operating Systems (HotOS’11). 16--20. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Hossein Falaki, Ratul Mahajan, Srikanth Kandula, Dimitrios Lymberopoulos, Ramesh Govindan, and Deborah Estrin. 2010. Diversity in Smartphone Usage. In Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services (MobiSys’10). 179--194. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Jason Flinn, Keith I. Farkas, and Jennifer Anderson. 2000. Power and Energy Characterization of the Itsy Pocket Computer (Version 1.5). Technical Report HP Labs Technical Reports WRL-TN-56. Western Research Laboratory.Google ScholarGoogle Scholar
  13. Google, Inc. 2015. Nexus 5. http://www.google.com/nexus/5/. (March 2015).Google ScholarGoogle Scholar
  14. GSMArena.com. 2010. Motorola XT720 MOTOROI - Full phone specifications. http://www.gsmarena.com/motorola_xt720_motoroi-3090.php. (2010).Google ScholarGoogle Scholar
  15. Nitin Gupta. 2010. compcache: Compressed Caching for Linux. http://code.google.com/p/compcache. (2010).Google ScholarGoogle Scholar
  16. Dianne Hackborn. 2010. Multitasking the Android Way. http://android-developers.blogspot.kr/2010/04/multitasking-android-way.html. (2010).Google ScholarGoogle Scholar
  17. Anthony Hayter. 2012. Probability and Statistics for Engineers and Scientists. Brooks/Cole, Cengage Learning.Google ScholarGoogle Scholar
  18. International Data Corporation (IDC). 2015. Worldwide Quarterly Mobile Phone Tracker. http://www.idc.com/tracker/showtrackerhome.jsp. (Aug. 2015).Google ScholarGoogle Scholar
  19. Seth Jennings. 2013. Zswap: Compressed Swap Caching. http://lwn.net/Articles/528817. (2013).Google ScholarGoogle Scholar
  20. Theodore Johnson and Dennis Shasha. 1994. 2Q: A low overhead high performance buffer management replacement algoritm. In Proceedings of the 20th International Conference on Very Large Databases (VLDB’94). 439--450. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Sang-Hoon Kim, Jinkyu Jeong, Jin-Soo Kim, and Seungryoul Maeng. 2016. SmartLMK: A memory reclamation scheme for improving user-perceived app launch time. ACM Transactions on Embedded Computing Systems 15, 47 (May 2016). Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. An-Chow Lai, Cem Fide, and Babak Falsafi. 2001. Dead-block Prediction 8 Dead-block Correlating Prefetchers. In Proceedings of the 28th Annual International Symposium on Computer Architecture (ISCA’01). 144--154. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Donghee Lee, Jongmoo Choi, Jong-Hun Kim, S. H. Noh, Sang Lyul Min, Yookun Cho, and Chong Sang Kim. 2001. LRFU: a spectrum of policies that subsumes the least recently used and least frequently used policies. IEEE Trans. Comput. 50, 12 (Dec. 2001), 1352--1361. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Sarah Lewin. 2014. Apple’s and Samsung’s changing smartphone recipes. IEEE Spectrum. (Nov. 2014).Google ScholarGoogle Scholar
  25. Song Liu, Karthik Pattabiraman, Thomas Moscibroda, and Benjamin G. Zorn. 2011. Flikker: Saving DRAM Refresh-power through Critical Data Partitioning. In Proceedings of the 16th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XVI). 213--224. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Nimrod Megiddo and Dharmendra S. Modha. 2003. ARC: A Self-Tuning, Low Overhead Replacement Cache. In Proceedings of the 2nd USENIX Conference on File and Storage Technologies (FAST’03). 115--130. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Arpit Midha and Patrik Torstensson. 2017. Android Go. https://events.google.com/io/schedule/?section=may-18. (May 2017).Google ScholarGoogle Scholar
  28. Elizabeth J. O’Neil, Patrick E. O’Neil, and Gerhard Weikum. 1993. The LRU-K Page Replacement Algorithm for Database Disk Buffering. In Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data (SIGMOD’93). 297--306. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Abhinav Parate, Matthias Böhmer, David Chu, Deepak Ganesan, and Benjamin M. Marlin. 2013. Practical Prediction and Prefetch for Faster Access to Applications on Mobile Phones. In Proceedings of the 2013 ACM International Joint Conference on Pervasive and Ubiquitous Computing (UbiComp’13). 275--284. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Ahmad Rahmati, Clayton Shepard, Chad Tossell, Mian Dong, Zhen Wang, Lin Zhong, and Phillip Kortum. 2011. Tales of 34 iPhone Users: How They Change and Why They Are Different. Technical Report TR-2011-0624 (2011).Google ScholarGoogle Scholar
  31. Samsung Electronics Co., Ltd. 2014. Samsung GALAXY S3. http://www.samsung.com/global/galaxys3. (2014).Google ScholarGoogle Scholar
  32. Samsung Electronics Co., Ltd. 2014. Samsung GALAXY S4 - Life companion. http://www.samsung.com/global/microsite/galaxys4. (2014).Google ScholarGoogle Scholar
  33. Samsung Electronics, Co., Ltd. 2016. Galaxy S7 and Galaxy S7 edge. (2016).Google ScholarGoogle Scholar
  34. Clayton Shepard, Ahmad Rahmati, Chad Tossell, Lin Zhong, and Phillip Kortum. 2011. LiveLab: measuring wireless networks and smartphone users in the field. Performance Evaluation Review 38, 3 (January 2011), 15--20. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. The Linux Foundation. 2013. Tizen: An open source, standards-based software platform for multiple device categories. http://www.tizen.org. (2013).Google ScholarGoogle Scholar
  36. Niraj Tolia, David G. Andersen, and M. Satyanarayanan. 2006. Quantifying interactive user experience on thin clients. IEEE Computer 39 (March 2006), 46--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Ionut Trestian, Supranamaya Ranjan, Aleksandar Kuzmanovic, and Antonio Nucci. 2009. Measuring Serendipity: Connecting People, Locations, and Interests in a Mobile 3G Network. In Proceedings of the 9th ACM SIGCOMM Conference on Internet Measurement Conference (IMC’09). 267--279. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Tingxin Yan, David Chu, Deepak Ganesan, Aman Kansal, and Jie Liu. 2012. Fast App Launching for Mobile Devices Using Predictive User Context. In Proceedings of the 10th International Conference on Mobile Systems, Applications and Services (MobiSys’12). Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Chunhui Zhang, Xiang Ding, Guanling Chen, Ke Huang, Xiaoxiao Ma, and Bo Yan. 2013. Nihao: A Predictive Smartphone Application Launcher. 110 (2013), 294--313.Google ScholarGoogle Scholar
  40. Pin Zhou, Vivek Pandey, Jagadeesan Sundaresan, Anand Raghuraman, Yuanyuan Zhou, and Sanjeev Kumar. 2004. Dynamic Tracking of Page Miss Ratio Curve for Memory Management. In Proceedings of the 11th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XI). 177--188. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Application-Aware Swapping for Mobile Systems

    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!