
我正在兩台不同的機器(CentOS 7)上運行一個使用巨大記憶體映射檔案的應用程式。
我發現同一個程式在兩台不同的機器上運行時,性能有顯著差異。
原因是一台機器使用了過多的磁碟 I/O,因為大多數頁面都換出到磁碟。
當我運行 top
命令時,共享記憶體區域的大小在慢速計算機上大約只有幾兆位元組。在速度更快的機器上,共享記憶體區域的大小約為 6GB,這意味著大部分資料都快取在作業系統頁面快取上。
我檢查了是否有足夠的(超過 16GB)可用記憶體空間,足以快取整個記憶體映射檔案。
有人可以給我關於這個問題的想法嗎?