[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Managing memory usage per *user* (or group) not per *process*?



Dave Ewart wrote:
I have a system which I manage which has many users.  Now and again,
during busy periods, if many users are working at once the machine
starts swapping and performance goes through the floor.  This is because
the main purpose of the machine is to run statistical analyses of large
datasets which results in heavy RAM usage.

I'd like to impose resource limits on RAM usage.

The standard approach to this appears to be to use ulimit/setrlimit,
which allows one to set process limits for various things.  But, the
underlying flaw with this approach is that the limits operate per
*process*, not per user.

This means that if there is a process limit of 1GB RAM, there is nothing
stopping a user running many processes each of which are 'only' 900MB,
for example.

Is there a way to impose resource limits (spec. RAM usage) per user?
Or, even better, per system group (so I could say "all users in group
'staff' are limited to a total memory usage at any one time of 4GB RAM"
or similar)?

Any suggestions and ideas most welcome!

Thanks,

Dave.

I don't know the answer to your query. But if I was in your place I would ask Con Kolivas at:
http://members.optusnet.com.au/ckolivas/kernel/
I run his kernel (2.6.15-ck5) and the discussion in the forum he maintains and the kernel patches he provides are along the line of your query.

H




Reply to: