Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 Jul 2003 21:45:02 +0800
From:      David Xu <davidxu@FreeBSD.org>
To:        "Petri Helenius" <pete@he.iki.fi>, <freebsd-threads@FreeBSD.org>
Subject:   Re: libkse "wieght"
Message-ID:  <200307262145.02854.davidxu@FreeBSD.org>
In-Reply-To: <069c01c35375$e9352880$812a40c1@PETEX31>
References:  <069c01c35375$e9352880$812a40c1@PETEX31>

next in thread | previous in thread | raw e-mail | index | archive | help
On Saturday 26 July 2003 21:00, Petri Helenius wrote:
> First of all, I=B4m very happy with the libkse since a few weeks ago,
> scheduling and signals seem to work for me and the application runs
> smoother than ever, although with only a handful of threads.
>
> I was wondering how "expensive" thread creation and termination designed =
to
> be with libkse, say should I just create and throw away tens or hundreds =
of
> threads in a small time or try to "recycle" the worker threads I already
> created?=20

With newest libkse source code, I can create 5000 threads and then
pthread_join them in 0.6 seconds  on my PIII 1Ghz machine. Although it is
cheap enough to create thread and throw it away, but caching some threads i=
s=20
still a good idea.

> Most threads will be either waiting on network input/output,,
> condvar to flip or a sleep to expire. I would expect to have maximum of
> 5-10 threads executing at any time but I=B4m wondering if the traditional
> "large poll/select" approach is superior to creating, say, 500 threads?
>
It depends on application,  because poll/select on disk file has no effect,
if you want to increase concurrent I/O for disk file,  if you don't use AIO=
,=20
thread is still better then select/poll.

> I=B4m not expecting you to design my app for me but just give insight of =
how
> expensive I should the thread maintenance and switching operations to be
> with libkse. By my previous experience with libkse, switching between
> threads is lightweight enough not to cause performance issues. I haven=B4t
> tested the creation/termination stuff yet.
>
> Pete
>
> _______________________________________________
> freebsd-threads@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-threads
> To unsubscribe, send any mail to "freebsd-threads-unsubscribe@freebsd.org"



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