จะทำให้ Linux OOM killer ไม่ฆ่ากระบวนการของฉันได้อย่างไร
ฉันจะให้ Linux OOM killer ไม่ฆ่ากระบวนการของฉันได้อย่างไรเมื่อหน่วยความจำกายภาพต่ำ แต่มีพื้นที่สว็อปมาก? ฉันปิดใช้งานการฆ่า OOM และ overcommit ด้วย sysctl vm.overcommit_memory = 2 VM มี swap ที่ไม่มีการจัดระเบียบฟรี 3 GB และกระบวนการที่ OOM ถูกฆ่านั้นมีการใช้หน่วยความจำสูงสุดน้อยกว่า 200MB ฉันรู้ว่าการแลกเปลี่ยนในระยะยาวจะน่ากลัวสำหรับประสิทธิภาพ แต่ฉันต้องใช้ swap ในตอนนี้เพื่อทำการทดสอบการทำงานภายใต้ valgrind ที่ความต้องการหน่วยความจำยิ่งใหญ่กว่ามาก Mar 7 02:43:11 myhost kernel: memcheck-amd64- invoked oom-killer: gfp_mask=0x24002c2, order=0, oom_score_adj=0 Mar 7 02:43:11 myhost kernel: memcheck-amd64- cpuset=/ mems_allowed=0 …