WSL2的版本,占用内存有点吃不消,好像是不会主动归还给主机,还是得折腾
配置文件限制上限加主动释放的命令来解决
原因
默认占用过多内存,80%,详细参数见参考链接
解决方法
配置
找到 .wslconfig
文件,一般位于 C:\Users\Your Username\.wslconfig
修改后内容如下
1 | [wsl2] |
释放
1 | # 内存压缩 |
drop_caches
Linux Kernel 2.6.16之后的内核提供了一个设置内核抛弃 页缓存 和/或 目录(dentry)和索引节点(inode)缓存,这样可以释放出大量内存。
1 | # 释放页缓存 |
compact_memory
当内核编译参数设置了CONFIG_COMPACTION,就会在/proc/sys/vm/compact_memory有入口文件。将1写入到这个文件,则所有的zones就会进行压缩,以便能够尽可能地提供连续内存块。对于需要分配大页的时候这个功能非常重要,不过,进程会在需要时直接进行内存压缩(compact memory)