skip to main content
research-article

IOSR: Improving I/O Efficiency for Memory Swapping on Mobile Devices Via Scheduling and Reshaping

Authors Info & Claims
Published:09 September 2023Publication History
Skip Abstract Section

Abstract

Mobile systems and applications are becoming increasingly feature-rich and powerful, which constantly suffer from memory pressure, especially for devices equipped with limited DRAM. Swapping inactive DRAM pages to the storage device is a promising solution to extend the physical memory. However, existing mobile devices usually adopt flash memory as the storage device, where swapping DRAM pages to flash memory may introduce significant performance overhead. In this paper, we first conduct an in-depth analysis of the I/O characteristics of the flash-based memory swapping, including the I/O interference and swap I/O randomness in swap subsystem. Then an I/O efficiency optimization framework for memory swapping (IOSR) is proposed to enhance the performance of flash-based memory swapping for mobile devices. IOSR consists of two methods: swap I/O scheduling (SIOS) and swap I/O pattern reshaping (SIOR). SIOS is designed to schedule the swap I/O to reduce interference with other processes I/Os. SIOR is designed to reshape the swap I/O pattern with process-oriented swap slot allocation and adaptive granularity swap read-ahead. IOSR is implemented on Google Pixel 4. Experimental results show that IOSR reduces the application switching time by 31.7% and improves the swap-in bandwidth by 35.5% on average compared to the state-of-the-art.

REFERENCES

  1. [1] 2023. All Xiaomi that will have the RAM Expansion Function. https://www.xiaomist.com/2021/07/these-are-all-xiaomi-that-can-already.htmlGoogle ScholarGoogle Scholar
  2. [2] 2023. AndroBench. http://www.androbench.org/wiki/AndroBenchGoogle ScholarGoogle Scholar
  3. [3] 2023. Android Debug Bridge(Adb): Android Developers. https://developer.android.com/studio/command-line/adbGoogle ScholarGoogle Scholar
  4. [4] 2023. Android RAM Management Tips and Tricks. https://www.droidviews.com/android-ram-management/Google ScholarGoogle Scholar
  5. [5] 2023. Blktrace. https://man7.org/linux/man-pages/man8/blktrace.8.htmlGoogle ScholarGoogle Scholar
  6. [6] 2023. How the UFS 4.0 Storage Standard will Improve your Phone’s Performance. https://thenextweb.com/news/ufs-4-0-samsung-phone-stroage-analysisGoogle ScholarGoogle Scholar
  7. [7] 2023. Huawei’s Memory Expansion Technology: 8GB RAM Works as 10GB and 12GB RAM as 14GB: Huawei Community. https://consumer.huawei.com/ae-en/community/details/Huawei-s-Memory-Expansion-Technology-8GB-RAM-works-as-10GB-and-12GB-RAM-as-14GB/topicId_121377/Google ScholarGoogle Scholar
  8. [8] 2023. Keeping your App Responsive: Android Developers. https://developer.android.com/training/articles/perf-anrGoogle ScholarGoogle Scholar
  9. [9] 2023. Linux Reverse Mapping (rmap). https://lwn.net/Articles/23732/Google ScholarGoogle Scholar
  10. [10] 2023. Low Memory Killer Daemon: Android Developers Docs. https://source.android.com/docs/core/perf/lmkdGoogle ScholarGoogle Scholar
  11. [11] 2023. Low Memory Management: Android Developers. https://developer.android.com/topic/performance/memory-managementGoogle ScholarGoogle Scholar
  12. [12] 2023. OPPO Introduces New Memory Expansion Technology for its Reno5 Series, A94 and A74 Series Smartphones. https://www.oppo.com/sg/newsroom/press/oppo-introduces-new-memory-expansion-technology/Google ScholarGoogle Scholar
  13. [13] 2023. Optimize for Doze and App Standby. https://developer.android.com/training/monitoring-device-state/doze-standbyGoogle ScholarGoogle Scholar
  14. [14] 2023. Profile Battery Usage with Batterystats and Battery Historian. https://developer.android.com/topic/performance/power/setup-battery-historianGoogle ScholarGoogle Scholar
  15. [15] 2023. SwapPss. https://www.kernel.org/doc/html/latest/filesystems/proc.html?highlight=PssGoogle ScholarGoogle Scholar
  16. [16] 2023. UI/Application Exerciser Monkey: Android Developers. https://developer.android.com/studio/test/other-testing-tools/monkeyGoogle ScholarGoogle Scholar
  17. [17] 2023. Vmstat. https://en.wikipedia.org/wiki/VmstatGoogle ScholarGoogle Scholar
  18. [18] 2023. What is RAM Plus and How to Use It? https://www.samsung.com/sg/support/mobile-devices/what-is-ram-plus-and-how-to-use-it/Google ScholarGoogle Scholar
  19. [19] Chen Xianzhang, Sha Edwin H.-M., Jiang Weiwen, Zhuge Qingfeng, Chen Junxi, Qin Jiejie, and Zeng Yuansong. 2016. The design of an efficient swap mechanism for hybrid DRAM-NVM systems. In 2016 International Conference on Embedded Software (EMSOFT’16). 110.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. [20] Corbet Jonathan. 2023. The BFQ I/O Scheduler. https://lwn.net/Articles/601799/Google ScholarGoogle Scholar
  21. [21] Guo Weichao, Chen Kang, Feng Huan, Wu Yongwei, Zhang Rui, and Zheng Weimin. 2015. mars: Mobile application relaunching speed-up through flash-aware page swapping. IEEE Trans. Comput. 65, 3 (2015), 916928.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. [22] Gupta Nitin. 2023. ZRAM: Compressed RAM-based Block Devices. https://www.kernel.org/doc/html/latest/admin-guide/blockdev/zram.htmlGoogle ScholarGoogle Scholar
  23. [23] Hahn Sangwook Shane, Lee Sungjin, Yee Inhyuk, Ryu Donguk, and Kim Jihong. 2018. FastTrack: Foreground app-aware I/O management for improving user experience of Android smartphones. In 2018 USENIX Annual Technical Conference (USENIX ATC’18). USENIX Association, 1528.Google ScholarGoogle Scholar
  24. [24] Hong Duwon, Kim Myungsuk, Cho Geonhee, Lee Dusol, and Kim Jihong. 2022. GuardedErase: Extending SSD lifetimes by protecting weak wordlines. In 20th USENIX Conference on File and Storage Technologies (FAST’22). USENIX Association, 133146.Google ScholarGoogle Scholar
  25. [25] Jeong Daeho, Lee Youngjae, and Kim Jin-Soo. 2015. Boosting quasi-asynchronous I/O for better responsiveness in mobile devices. In 13th USENIX Conference on File and Storage Technologies (FAST’15). USENIX Association, 191202.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. [26] Jeong Sooman, Lee Kisung, Lee Seongjin, Son Seoungbum, and Won Youjip. 2013. I/O stack optimization for smartphones. In 2013 USENIX Annual Technical Conference (USENIX ATC’13). USENIX Association, 309320.Google ScholarGoogle Scholar
  27. [27] Joo Yongsoo, Ryu Junhee, Park Sangsoo, and Shin Kang G.. 2011. FAST: Quick application launch on solid-state drives. In 9th USENIX Conference on File and Storage Technologies (FAST’11). USENIX Association, 101114.Google ScholarGoogle Scholar
  28. [28] Kim Hyosu, Lee Minsub, Han Wookhyun, Lee Kilho, and Shin Insik. 2011. Aciom: Application characteristics-aware disk and network I/O management on Android platform. In 2011 Proceedings of the Ninth ACM International Conference on Embedded Software (EMSOFT’11) (EMSOFT’16). 4958.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. [29] Kim Sangwook, Kim Hwanju, Lee Joonwon, and Jeong Jinkyu. 2017. Enlightening the I/O path: A holistic approach for application performance. In 15th USENIX Conference on File and Storage Technologies (FAST’17). USENIX Association, 345358.Google ScholarGoogle Scholar
  30. [30] Kim Sang-Hoon, Jeong Jinkyu, Kim J.W, and Maeng Seungryoul. 2016. SmartLMK: A memory reclamation scheme for improving user-perceived app launch time. ACM Transactions on Embedded Computing Systems (TECS) 15, 3, Article 47 (2016), 25 pages.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. [31] Kim Sang-Hoon, Jeong Jinkyu, and Kim Jin-Soo. 2017. Application-aware swapping for mobile systems. ACM Transactions on Embedded Computing Systems (TECS) 16, 5s, Article 182 (2017), 19 pages.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. [32] Lebeck Niel, Krishnamurthy Arvind, Levy Henry M., and Zhang Irene. 2020. End the senseless killing: Improving memory management for mobile operating systems. In 2020 USENIX Annual Technical Conference (USENIX ATC’20). USENIX Association, 873887.Google ScholarGoogle Scholar
  33. [33] Li Changlong, Shi Liang, Liang Yu, and Xue Chun Jason. 2020. SEAL: User experience-aware two-level swap for mobile devices. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 39, 11 (2020), 41024114.Google ScholarGoogle ScholarCross RefCross Ref
  34. [34] Li Changlong, Shi Liang, and Xue Chun Jason. 2021. MobileSwap: Cross-device memory swapping for mobile devices. In 2021 58th ACM/IEEE Design Automation Conference (DAC’21). 115120.Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. [35] Liang Yu, Li Jinheng, Ausavarungnirun Rachata, Pan Riwei, Shi Liang, Kuo Tei-Wei, and Xue Chun Jason. 2020. Acclaim: Adaptive memory reclaim to improve user experience in Android systems. In 2020 USENIX Annual Technical Conference (USENIX ATC’20). USENIX Association, 897910.Google ScholarGoogle Scholar
  36. [36] Nguyen David T., Zhou Gang, Xing Guoliang, Qi Xin, Hao Zijiang, Peng Ge, and Yang Qing. 2015. Reducing smartphone application delay through read/write isolation. In Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services (MobiSys’15). Association for Computing Machinery, 287300.Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. [37] Son Sam, Lee Seung Yul, Jin Yunho, Bae Jonghyun, Jeong Jinkyu, Ham Tae Jun, Lee Jae W., and Yoon Hongil. 2021. ASAP: Fast mobile application switch via adaptive prepaging. In 2021 USENIX Annual Technical Conference (USENIX ATC’21). USENIX Association, 365380.Google ScholarGoogle Scholar
  38. [38] Soundararajan Gokul, Prabhakaran Vijayan, Balakrishnan Mahesh, and Wobber Ted. 2010. Extending SSD lifetimes with disk-based write caches. In 8th USENIX Conference on File and Storage Technologies (FAST’10), Vol. 10. USENIX Association, 101114.Google ScholarGoogle Scholar
  39. [39] Wang Yong-Xuan, Tsai Chung-Hsuan, and Chang Li-Pin. 2021. Killing processes or killing flash? Escaping from the dilemma using lightweight, compression-aware swap for mobile devices. ACM Transactions on Embedded Computing Systems (TECS) 20, 5s, Article 90 (2021), 24 pages.Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. [40] Weiner Johannes. 2023. Swap: Virtual Swap Readahead. https://lwn.net/Articles/336810/Google ScholarGoogle Scholar
  41. [41] Zhu Xiao, Liu Duo, Zhong Kan, Ren Jinting, and Li Tao. 2017. SmartSwap: High-performance and user experience friendly swapping in mobile systems. In 2017 54th ACM/EDAC/IEEE Design Automation Conference (DAC’17). 16.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. IOSR: Improving I/O Efficiency for Memory Swapping on Mobile Devices Via Scheduling and Reshaping

      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

      • Published in

        cover image ACM Transactions on Embedded Computing Systems
        ACM Transactions on Embedded Computing Systems  Volume 22, Issue 5s
        Special Issue ESWEEK 2023
        October 2023
        1394 pages
        ISSN:1539-9087
        EISSN:1558-3465
        DOI:10.1145/3614235
        • Editor:
        • Tulika Mitra
        Issue’s Table of Contents

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 9 September 2023
        • Accepted: 1 July 2023
        • Revised: 2 June 2023
        • Received: 20 March 2023
        Published in tecs Volume 22, Issue 5s

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
      • Article Metrics

        • Downloads (Last 12 months)358
        • Downloads (Last 6 weeks)58

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Full Text

      View this article in Full Text.

      View Full Text