24 / 04 / 01
增大WSL分配内存
编辑C:/Users/Accoutname
下.wslconfig
,写入:
[wsl2] processors=16 memory=32GB swap=8GB
配置内存策略
sysctl vm.overcommit_memory=2
这个命令用于配置Linux内核的内存过量使用策略。
vm.overcommit_memory
是一个内核参数,它控制着内核对内存分配的策略。这个参数可以设置为以下三个值:
0
- 内核将检查是否有足够的可用内存空间。如果有足够的可用内存,才允许分配请求;否则,内核拒绝分配内存。这是最严格的设置。
1
- 内核根据交换空间的总大小来决定是否同意一次内存申请。如果有足够的交换区支持,内核会允许分配内存,即便当前的可用内存空间不足。
2
- 内核允许分配所有的内存请求,即不会过多检查是否还有足够的可用内存空间。这是最宽松的设置,可能导致系统过度使用swap分区,进而影响系统性能。
因此,sysctl vm.overcommit_memory=2
的作用是设置内核为最宽松的内存过量使用策略,允许尽可能最大化利用内存,但可能会导致频繁使用swap分区,影响性能。这种设置一般用于某些对内存使用非常大的应用程序场景。
通常情况下,保持默认值0
或将其设置为1
是比较合理的,能在一定程度上防止内存耗尽的情况发生。