Swap
交換分區最大空間&功能
所以我是 ram 昂貴的應用程序的新手,我真的不知道交換是如何工作的……
我只有 10GiB 的記憶體(它是一個虛擬機)和 500GB/1TB 的可用硬碟空間
Java 應用程序需要大約 150/200GiB 的記憶體才能執行,但我可以將其減少到 64GiB。我認為不是所有東西都同時載入,但Java仍然需要分配堆空間
我應該分配多少交換空間?它將如何運作?作業系統將如何響應?(我知道它在 ram 已滿/減少 ram 使用時使用,但遺憾的是我沒有找到更多有用的資訊)
(可用)物理 RAM 和交換空間的總和必須大於核心和所有正在執行的程序分配的 RAM 總量。當然,使用大量交換空間可能會使系統非常緩慢。
因此,如果除了您的應用程序之外沒有什麼需要大量記憶體,那麼您應該至少有 65GiB 即 55GiB 交換空間。
很難說是 Linux 還是您的應用程序在記憶體管理方面更有效。因此,我建議分配 210GiB 用於交換(我才意識到這聽起來多麼瘋狂……)並將應用程序性能與不同的應用程序記憶體設置進行比較。
您可以更改正在執行的系統中的交換空間量,例如,如果您有 LVM 和多個可用於交換的 LV。見
man swapon
。