我的服务器有8G的RAM和8Gigs配置为交换文件.我有内存密集型应用程序在运行这些应用程序的峰值负载在此期间我们发现交换使用量增加使用大约1 GIG的交换.
我有另一台服务器,带有4Gig的RAM和8 Gigs交换以及运行在其上的类似内存密集型应用程序.但这里的交换使用率非常微不足道.大约100 MB.
我想知道什么是确切的条件或粗略的公式,基于哪个Linux将RAM中的进程内存交换到交换文件.
我知道它基于交换因素.它还有什么基础?交换文件大小?任何指向Linux内核文档/源代码的指针都会很好.
解决方法
Linux内核的VM子系统是一个非常复杂的野兽,内核使用启发式算法和算法来确定交换进/出的页面以及何时进行交换.我不认为有一个简单的公式能够描述如何以及何时将页面放入磁盘.也许这篇LWN文章对你有用:
http://lwn.net/Articles/83588/