Re: Avoiding OOM on overcommit...?

From: Jesse Pollard (pollard@tomcat.admin.navo.hpc.mil)
Date: Wed Mar 22 2000 - 08:33:12 EST


James Sutherland <jas88@cam.ac.uk>
> On Tue, 21 Mar 2000 11:43:02 -0600 (CST), you wrote:
> >David Whysong <dwhysong@physics.ucsb.edu>:
> >> On Mon, 20 Mar 2000, Jesse Pollard wrote:
> >> >On Mon, 20 Mar 2000, David Whysong wrote:
> >> >>
> >> >>That's very misleading. In fact if you give the overcommitted system the
> >> >>same amount of VM, it will work just fine. In other words, turning off
> >> >>overcommit isn't what saves you. You added more memory!
> >> >
> >> >I guaranteed that the memory allocated could be used. I didn't just add
> >> >more memory. Just adding more memory will still allow the system to fail,
> >> >it may take longer, it may not happen as often. But it can still happen.
> >>
> >> If you properly handle system-wide OOM situations by killing tasks (see my
> >> other emails about doing this with the OOM killer patch + a userspace
> >> daemon), then you no longer have system crashes.
> >>
> >> Yes, your app can be killed, but that is also what happens with quotas. In
> >> fact, it happens earlier with quotas.
> >
> >It happens before the OOM can kill the system. It happens before my process
> >causes other users to loose theirs.
>
> The shortage of memory cannot kill the system. It can just kill
> processes. A kernel bug can kill the system, but that's another issue.
>
> >You obviously haven't used a large multiuser system recently. Quotas are
> >applied in almost every location I've seen. Why - to prevent one users
> >job from interfereing with other users jobs.
>
> Quotas are essential, and I still can't see why Linux lacks them...
>
> >If you were running a simulation/analysis and were supposedly given
> >resources to run, and I accessed the same system with the same goal in
> >mind, which user gets killed when I use up the resources given to me?
                                                            ^^^^^^^^^^^
> >BTW, I have the same priority of access to the system that you have...
>
> Yours, if you don't have enough resources available to you to run it.
> Otherwise, both run fine.

BUT "when I use up the resources given to me" - If the resources weren't
available, why did the system give them to me?

> >Who gets killed - your process or mine?
> Yours, because there aren't enough resources to run it.

The system told me there were enough resources.

> >Which is the correct one?
> Yours, as above.

As determined by what?

> >How do you know it is the correct one?
> Because it would put you above the limit available to you.

But the system told me the resources were available. And what limit?
The kernel doesn't support resource quotas.

> >If it happens again, are the answers the same?
> Yes.

BUGGGY. The system gave the resource to me. See above. What distinguishes
my job from yours?
-------------------------------------------------------------------------
Jesse I Pollard, II
Email: pollard@navo.hpc.mil

Any opinions expressed are solely my own.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Mar 23 2000 - 21:00:36 EST