Abstract
Read-ahead schemes have been widely used in page cache to improve read performance of Linux systems. As Android system inherits the Linux kernel, the traditional read-ahead scheme is directly transplanted to mobile devices. However, request sizes and page cache sizes on mobile devices are much smaller, which may degrade read-ahead efficiency and therefore hurt user experience. This paper first observes that many pages pre-fetched by read-ahead are unused, which causes frequent page cache eviction. And these evict operations could induce extra access latency, especially when write-back is conducting. Then, this paper proposes a new analysis model to characterize the factors that closely relate to the access latency. It is found that there exists a trade-off between read-ahead size and access latency. Finally, this paper proposes two optimized read-ahead schemes to exploit this trade-off under different situations. Size-tuning scheme aims to find the proper maximum size of read-ahead according to the characteristics of mobile devices. While MobiRA scheme improves the read-ahead efficiency by dynamically tuning read-ahead size and stop-settings. Experimental results on real mobile devices show that the proposed schemes can increase the efficiency of read-ahead scheme and improve the overall performance of mobile devices.
Original language | English |
---|---|
Pages (from-to) | 99-110 |
Number of pages | 12 |
Journal | IEEE Transactions on Computers |
Volume | 70 |
Issue number | 1 |
Online published | 2 Apr 2020 |
DOIs | |
Publication status | Published - Jan 2021 |
Research Keywords
- Mobile handsets
- Performance evaluation
- Linux
- Kernel
- User experience
- Page cache
- Read-ahead scheme
- Mobile device
- Read performance