> In message <199904102057.paa27...@home.dragondata.com> Kevin Day writes:
> : i.e. uid 1001 starts 40 processes eating as much cpu as they can. Then uid
> : 1002 starts up one process. Uid 1002's process gets 50% cpu, and uid 1001's
> : 40 processes get 50% cpu shared between them. 
> I've seen some experimental patches in the past that try to do just
> this.  However, there are some problems.  What if uid 1002's process
> does a sleep.  Should the 40 processes that 1001 just get 50% of the
> cpu?  Or should there be other limits.  It turns into an interesting
> research problem in a hurry.
> Warner

I was thinking essentially just processes in the RUN state get applied to
this. If the cpu would otherwise be sitting idle, by all means give it to
someone. But, if two users have processes running, just because one user has
50 processes doesn't mean it should get 50x the cpu as one user who has one
process running. If a process is in sleep or blocked(select, IO, whatever),
it's taken out of consideration for the cpu, and the full cpu is given to
those processes that actually have work to do.

At least, that's my take on it.

I run into this problem daily, and i get enough user complains of "User x
has 50 processes running, eating as much cpu as they can, my compile just
took 15 minutes".


To Unsubscribe: send mail to majord...@freebsd.org
with "unsubscribe freebsd-current" in the body of the message

Reply via email to