Re: Poor condvar performance

Luke Elliott <[email protected]> Wed, 26 Nov 2003 17:28:59 -0600
Newsgroups gmane.comp.lib.phil
Message-ID <[email protected]>
On Wed, 2003-11-26 at 17:05, Ulrich Drepper wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Ingo Molnar wrote:
> 
> > it turns out that the requeue implementation had to be turned off in the
> > CVS a few weeks ago
> 
> Not entirely, only for cond_signal.  cond_broadcast still uses requeue
> for condvars without pshared.  I don't see how, if requeue works, using
> cond_broadcast could create a scheduling storm.  There must be some
> other factors involved.
> 
> - -- 
> ➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.3 (GNU/Linux)
> 
> iD8DBQE/xTHU2ijCOnn/RHQRAs/8AJ0VYnNFdJorx/6amj3j7kKFBuVZKwCcDiIJ
> UZmHRkdH3orLFDw7tGBokcA=
> =NFd2
> -----END PGP SIGNATURE-----

Ah, I am using pshared cond vars (hence why I needed the recent fix).
What is the plan for putting back the requeue for pshared? (I'm happy to
stay with the futex / sched hack for now, but as a matter of interest).

Incidentally, using cond_signal() I see around 300000 content switches /
sec and with broadcast, 200000 / sec.

Thanks

Luke.