我试图通过以下方式启动 systemd-run 来限制 Chrome 的内存使用:
systemd-run --scope \
-p MemoryMax=16G \
-p MemoryHigh=15G \
-p CPUWeight=70 \
-p StartupCPUWeight=100 \
/opt/google/chrome/chrome
然而这似乎并没有真正起作用,因为我可以看到它填满了我所有的 32GB 内存并导致我的系统崩溃。在我看来,Systemd 并没有注册所有实际使用的内存。有谁知道这里可能缺少什么以及如何限制它?这是在 Ubuntu 22.04.3 LTS 上。
任何提示都非常感激。
编辑:似乎我在顶部结果中查看了错误的列,因此我的怀疑方向错误。实际的瓶颈一定是另一个进程,而 systemd-run 正在完成它的工作。感谢@marcus-müller 的见解。
答案1
这只是虚拟内存,而不是实际分配的内存;事情似乎进展顺利。