<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 9, 2015 at 11:56 AM, Prentice Bisbal <span dir="ltr"><<a href="mailto:prentice.bisbal@rutgers.edu" target="_blank">prentice.bisbal@rutgers.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF">To be clear setting vm.overcommit_memory doesn't directly affect the
    behavior of the OOM killer. Turning off overcommit prevents the 
    Linux virtual memory system from making promises it can't always
    keep, which reduces/eliminates the need for the OOM Killer. <br>
    <br>
    Setting vm.overcommit_memory = 2 turns off overcommitting and is the
    best choice if you want to avoid the OOM Killer. </div></blockquote></div><br><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">​I recommend tuning vm.user_reserve_kbytes and admin_reserve_kbytes if you​ turn off overcommit and have no swap. The patch went in around 3.10</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><a href="https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c9b1d0981fcce3d9976d7b7a56e4e0503bc610dd">https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c9b1d0981fcce3d9976d7b7a56e4e0503bc610dd</a><br></div><br><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">​It used to be hardcoded to 1/32nd reserves, which became impractical over time.​</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">If I recall correctly, turning off overcommit doesn't totally prevent overcommitment from happening. Available pages are checked on malloc, but if a process never touches a page it mallocs, then it isn't subtracted out of the available pages. So, if you want to be sure not to overcommit, make sure apps use calloc, mlock, or walk over their pages as soon as possible. Please correct me if I'm wrong on that.</div><br></div><div><br></div>-- <br><div class="gmail_signature">Andrew Shewmaker</div>
</div></div>