感觉不太正常,是不是swappiness值改了,默认应该是60。
可以用下面的命令查看:
cat /proc/sys/vm/swappiness
当内存使用到一定阈值时,为了释放内存,内核会换出非文件数据到swap或者写回已打开文件。前者需要消耗交换空间。
swappiness值越高,内核更偏向换出非文件数据到swap。
感觉不太正常,是不是swappiness值改了,默认应该是60。
可以用下面的命令查看:
cat /proc/sys/vm/swappiness
当内存使用到一定阈值时,为了释放内存,内核会换出非文件数据到swap或者写回已打开文件。前者需要消耗交换空间。
swappiness值越高,内核更偏向换出非文件数据到swap。
这也是有可能发生的。一种常见的情况是之前刚刚运行了一个大程序把内存占满了,现在关闭了这个大程序,就会出现内存空出一块而swap也有占用的情况。另外像是睡眠状态的虚拟机这种“冷”数据也有可能会被存入swap。
反正内存的空闲空间也会被用来缓存经常打开的文件,不用担心内存利用率浪费的问题。
感觉不太正常,是不是swappiness值改了,默认应该是60。
可以用下面的命令查看:
cat /proc/sys/vm/swappiness
当内存使用到一定阈值时,为了释放内存,内核会换出非文件数据到swap或者写回已打开文件。前者需要消耗交换空间。
swappiness值越高,内核更偏向换出非文件数据到swap。
cat /proc/sys/vm/swappinesswappiness
60
无意义,本来没有,但是电脑用几天就卡,用几天就卡,我寻思是不是没交换分区的事,就弄了一个看看还卡不,结果照样卡。
cat /proc/sys/vm/swappinesswappiness
60
那我感觉可能是deepin的调度有问题吧,debian12没这种问题,一般得等内存快吃满才动swap。
1.1 Linux的swap原理
1、 控制swap使用的系统参数:swappiness
Swappiness:表示使用物理内存限度
Swappiness为0(100%-0=100%)表示物理内存使用到100%的时候使用swap空间
Swappiness为60(100%-60%=40%)表示物理内存使用到40%的时候使用swap空间
如果swappiness设置太大(内存的速度会比磁盘快很多),这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能,所以我们在操作系统层面,要尽可能使用内存,对该参数进行调整。
2、 Linux默认swappiness
60
默认为60,也就是说当物理内存使用到40%的时候开始使用swap。
2 解决
2.1 调整swappiness参数
2.1.1 临时调整
vm.swappiness = 10
2.1.2 永久调整
vm.swappiness=10
1.1 Linux的swap原理
1、 控制swap使用的系统参数:swappiness
Swappiness:表示使用物理内存限度
Swappiness为0(100%-0=100%)表示物理内存使用到100%的时候使用swap空间
Swappiness为60(100%-60%=40%)表示物理内存使用到40%的时候使用swap空间
如果swappiness设置太大(内存的速度会比磁盘快很多),这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能,所以我们在操作系统层面,要尽可能使用内存,对该参数进行调整。
2、 Linux默认swappiness
60
默认为60,也就是说当物理内存使用到40%的时候开始使用swap。
2 解决
2.1 调整swappiness参数
2.1.1 临时调整
vm.swappiness = 10
2.1.2 永久调整
vm.swappiness=10
刚手动改了下 echo 10 > /proc/sys/vm/swappiness
我就没给分交换分区。直接一个根分区和EFI分区。运行内存4g。目前不影响用。
专业的知识又增加了,不过物理内存占用40%了就用交换分区是不是阈值太低了,据说硬盘当内存用坏的块呢😂
sudo nano /etc/sysctl.conf
vm.swappiness=30
我改成30了
专业的知识又增加了,不过物理内存占用40%了就用交换分区是不是阈值太低了,据说硬盘当内存用坏的块呢😂
谁知道呢,是不是为了兼容小内存,比方1GB内存的40%是400MB这样。
我的运行内存16G,从不设置swap分区
即使为了装要求swap的软件,我也只是临时swapon /swapfile ,并且我的swappiness 值也都是0
还能改?
1.1 Linux的swap原理
1、 控制swap使用的系统参数:swappiness
Swappiness:表示使用物理内存限度
Swappiness为0(100%-0=100%)表示物理内存使用到100%的时候使用swap空间
Swappiness为60(100%-60%=40%)表示物理内存使用到40%的时候使用swap空间
如果swappiness设置太大(内存的速度会比磁盘快很多),这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能,所以我们在操作系统层面,要尽可能使用内存,对该参数进行调整。
2、 Linux默认swappiness
60
默认为60,也就是说当物理内存使用到40%的时候开始使用swap。
2 解决
2.1 调整swappiness参数
2.1.1 临时调整
vm.swappiness = 10
2.1.2 永久调整
vm.swappiness=10
swappiness并不用来控制物理内存的阈值,在一楼的截图里面已经说得很明白了。swappiness控制的是当内存满时,系统将内存写回文件还是swap。当swappiness较大时,内存内容被保存到swap;swappiness较小时,内存内容被尽可能地写回文件。
学到了
又学到了
我一般是改为10,这个也是很多文章当中的最佳实践
swappiness并不用来控制物理内存的阈值,在一楼的截图里面已经说得很明白了。swappiness控制的是当内存满时,系统将内存写回文件还是swap。当swappiness较大时,内存内容被保存到swap;swappiness较小时,内存内容被尽可能地写回文件。
有一个疑问,写回文件是指的写到哪里?既然是能写回到文件里的数据,为什么还要待在内存里,是需要频繁使用的缓存数据?搞不懂😂
[linux swap 内存交换分区详细介绍]
https://bbs.openkylin.top/t/topic/171719
建议看看此帖,可能会颠覆你对swappiness的一些认识
如题