A New Prefetching Strategy Based on Access Density in Linux

This paper presents a new access-density-based prefetching strategy to improve prefetching for the access patterns that have not been dealt with in the current Linux read-ahead algorithm. These access patterns include: reading file data backwards, reading files in a stridden way (leaving holes in between two adjacent references), alternating references between multiple file regions and reading files randomly. When these patterns are used, the current Linux read-ahead algorithm cannot handle them because the read-ahead operation is not activated. Three metrics are proposed in the evaluation of the algorithm. The current results, obtained from a real prototype implementation in the Linux kernel, show that such prefetching can have a significant performance improvement on the aforementioned access patterns.