我有一个/swapfile
1GB 大小的交换文件,按照ubuntu swap faq 中描述的过程进行.
在执行 RAM 密集型任务时,我使用“系统监视器”来检查内存和交换区上的负载。任务完成后,内存负载会迅速下降……但是,交换负载会在很长一段时间内保持较高水平,并且只会非常缓慢地下降(见图)。
调用时sudo swapoff -a && swapon -a
,我可以手动清除交换...但我宁愿知道:
简短的回答:如果您的计算机运行速度不是很慢,那就没问题。
Linux 仅在需要时才会从交换区中获取内容,否则,没有必要将不使用的内容从交换区加载到 RAM 中,从而减少缓存。
检查您的系统是否受到交换限制的一种方法是检查
vmstat 1
Run Code Online (Sandbox Code Playgroud)
并查看该wa
列,该列显示进程可以运行之前需要多长时间。另外,使用诸如 之类的工具htop
查看有多少进程处于磁盘睡眠状态(D
).
另外,你应该多一点交换。根据SwapFAQ:
RAM(MB) No hibernation With Hibernation Maximum
256 256 512 512
512 512 1024 1024
1024 1024 2048 2048
RAM(GB) No hibernation With Hibernation Maximum
1 1 2 2
2 1 3 4
3 2 5 6
4 2 6 8
5 2 7 10
6 2 8 12
8 3 11 16
12 3 15 24
16 4 20 32
24 5 29 48
32 6 38 64
64 8 72 128
128 11 139 256
Run Code Online (Sandbox Code Playgroud)
如果您有 16GB RAM,则应该有 4GB 到 32GB 之间
归档时间: |
|
查看次数: |
1021 次 |
最近记录: |