这里是基于Linux2.6.32.12我的系统:
1它包含20个进程占用大量CPU USR的 2它需要写速度100M/s的磁盘的数据,并将这些数据不会最近使用。如何在我的linux系统中停止磁盘I/O的页面缓存?
我想到:
它运行稳定和磁盘I/O会不会影响我的系统。
我的问题:
在开始时,系统按我的想法运行。但随着时间的推移,Linux会为磁盘I/O缓存大量数据,导致物理内存减少。最后,内存不足,那么Linux会交换进出我的进程。它会导致I/O问题,很多CPU时间被用于I/O。
我有什么尝试:
我试图解决的问题,通过“FSYNC”每次我写一个大block.But物理内存仍然减少,而缓存增加。
如何到此为止页面缓存也没用,我
更多资料:
当状元秀免费46963米,一切都很好,包括CPU%WA低,vmstat显示没有SI左右。
当Top显示免费的273m时,%wa太高而影响我的进程,而vmstat显示很多si等等。
为什么这对你很重要?阅读http://www.linuxatemyram。com/ – 2013-05-13 09:15:35
根据linuxatemyram.com的说法,“如果应用程序需要更多的内存,他们只是从磁盘缓存中取回它们,它们不会开始交换。”
但在我的情况下,我看到交换。 – wilsonwen 2013-05-13 09:35:47
你为什么认为改变这种行为会改善整体表现? – 2013-05-13 10:21:55