May I add pthread_[gs]etconcurrency to the threads libraries?
Daniel Eischen
eischen at pcnet1.pcnet.com
Wed Apr 16 11:16:34 PDT 2003
On Wed, 16 Apr 2003, Jeff Roberson wrote:
> On Wed, 16 Apr 2003, Daniel Eischen wrote:
>
> > On Wed, 16 Apr 2003, John Polstra wrote:
> >
> > > Hi Guys,
> > >
> > > Sergey Osokin sent me patches to add the standard
> > > pthread_[gs]etconcurrency functions to our various threads
> > > libraries. I reviewed them and they're OK. The functions don't do
> > > anything significant, but they fill the need for this part of the
> > > API.
> > >
> > > OK if I commit them this weekend? The changes don't change anything
> > > else. They just add stuff.
> >
> > I'm about to implement them for real in libpthread. I'd appreciate
> > you not adding them to that. I've got a slew of other changes that
> > I want add to it very soon.
> >
> > They don't seem to make sense for libthr and libc_r unless it
> > returns ENOTSUP. libthr is 1:1, so it is meaning less there
> > as well as libc_r.
>
> It is not meaningless. Please go ahead and implement stubs if you like.
> I intended to implement a thr_setconcurrency that these can eventually
> use. I was just going to implement it as a simple counter on the proc
> instead of using a full blown KSE structure just for this.
>
> 1:1 means one kernel thread for each user thread. It doesn't say anything
> about how many of those threads may run at a given time. It also doesn't
> force any scheduling scope or scheduling algorithm.
OK, I was under the impression that libthr would always schedule
threads (KSEs) to as many processors as possible. It'd be neat
to eventually softly bind them (KSE's in general) too :-)
--
Dan Eischen
More information about the freebsd-threads
mailing list