Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 Oct 2006 16:16:42 -0700
From:      Paul Allen <nospam@ugcs.caltech.edu>
To:        Julian Elischer <julian@elischer.org>
Cc:        Lev Serebryakov <lev@freebsd.org>, Robert Watson <rwatson@freebsd.org>, current@freebsd.org
Subject:   Re: KSE, libpthread & libthr: almost newbie question
Message-ID:  <20061027231642.GJ30707@riyal.ugcs.caltech.edu>
In-Reply-To: <4542896D.1050001@elischer.org>
References:  <917908193.20061027102647@serebryakov.spb.ru> <20061027103924.F79313@fledge.watson.org> <45426071.7020403@elischer.org> <602423478.20061028001449@serebryakov.spb.ru> <4542896D.1050001@elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
>From Julian Elischer <julian@elischer.org>, Fri, Oct 27, 2006 at 03:34:21PM -0700:
> Lev Serebryakov wrote:
> basically, if you and I both write programs to do a particular job
> on a timesharing system, and you use threads to do so and I use
> a sophisticated event handler/state machine, I shouldn't find that
> my program is running like a pig because yours has 1000 slots in the
> run queue and I only get run 1 in 1001 ticks.
And if this hypothetical user with the 1000 threads instead uses 1000
processes we should just look the other way?  Or worse we should encourage
him to use processes instead of threads despite that the former ought
to consume more wall-time because of the extra overhead?

The answer to your situation is rlimits.

Or put another way, absent such limits, if I can keep 1000 threads busy
for the entire duration of your program, ipso facto I have more work to
do than you do.

I think what you are really saying is that you want an rlimit that allows
WFQ by uid/gid/login classes.  It isn't necessary for such a thing to run
at the same frequency as the scheduler generally.


                                              Paul




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20061027231642.GJ30707>