Re: Threads not waking on pthread_cond_signal()
Jakub Jelinek <[email protected]>
| Newsgroups | gmane.comp.lib.phil |
|---|---|
| Message-ID | <[email protected]> |
On Mon, Jun 23, 2003 at 01:11:00PM +1000, Ian Wienand wrote: > On Sun, Jun 22, 2003 at 06:42:03PM -0700, Ulrich Drepper wrote: > > > I am seeing a problem on PowerPC and i386 with NPTL 0.47 where a > > > thread waiting in pthread_cond_wait() doesn't get woken up on > > > pthread_cond_signal(). > > > > What kernel are you using? > > 2.5.72 -- but I get correct behaviour with NPTL 0.48 so it was > probably me. > > However, i386 does seem to be a lot slower signalling threads than the > NPTL included in RedHat 9. > > RUNNING REDHAT 9 WAKEUP TEST > 718674 wakes ups in 4.99956 sec = 143748 per second > 861807 wakes ups in 5 sec = 172361 per second > 841964 wakes ups in 5.00006 sec = 168391 per second > 816596 wakes ups in 5.00003 sec = 163318 per second > 624066 wakes ups in 5.00004 sec = 124812 per second > > RUNNING NPTL 0.48 WAKEUP TEST > 114766 wakes ups in 4.99935 sec = 22956 per second > 168681 wakes ups in 4.99996 sec = 33736 per second > 286987 wakes ups in 4.99985 sec = 57399 per second > 286391 wakes ups in 4.99962 sec = 57283 per second > 337517 wakes ups in 5.00024 sec = 67500 per second Is this 2.5.72 on i386 as well or some other kernel? On kernels which don't support FUTEX_REQUEUE current NPTL is certainly expected to be slower (as FUTEX_REQUEUE syscalls are attempted unconditionally). Jakub