首页> 中文期刊>计算机应用 >多线程环境下基于多预取点的文件预取

多线程环境下基于多预取点的文件预取

     

摘要

为解决当前Linux内核的预取算法在多线程情况下出现预取误判的问题,依据多线程环境下进程对磁盘文件的访问特点,提出一种基于多预取点的预取算法.在Linux内核原有的预取算法的基础上,结合多线程环境下应用程序对数据的访问模式,在Linux内核的页面缓存层进行了实现.实验和分析表明,在IOzone单线程测试中,该算法和Linux内核原预取算法性能相当;在多线程测试中,读取相同大小的文件,耗时比Linux内核原预取算法至少少1/3.新算法对于提高I/O并行度,从而提高整个计算机系统并行化很有帮助.%To solve the problem that the prefetching algorithm of the current Linux kernel might mistakenly prefetch blocks under the circumstances of multithreading, according to the characteristics of disk file reading in a multi-threaded environment, this paper proposed a file prefetching algorithm with multiple prefetching points. On the basis of the original prefetching algorithm and in combination with the data access patterns of applications, the algorithm was implemented on the page caching layer of Linux. Through the experiments and analysis with Iozone, this proposed algorithm showed comparable performance with the existing algorithm of Linux in the single threaded environment and in a multithreaded one, and it took less time by 1/3 at least. The proposed algorithm helps to improve the I/O parallelism, thereby enhancing the entire computer system parallelism.

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号