lkml.org 
[lkml]   [2000]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: Slow pthread_create() under high load
In <Pine.BSF.4.10.10003270830440.47221-100000@media.sonique.com> Nicholas Vinen (hb@sonique.com) wrote:


> On Mon, 27 Mar 2000, Richard Gooch wrote:

>> Mate, where have you been? The day Linus lets user-space dictate what
>> goes into the kernel is the day hell freezes over. If you want a patch
>> to go into the kernel, you need to convince him it's a good idea.
>> Adding a dependency in user-space, expecting it to "force his hand",
>> will not help. It will probably just piss him off. Or make him laugh.
>>
>> Regards,
>>
>> Richard....

> OK, well, can any of these problems that are being discussed be fixed
> by changing/reimplementing POSIX threads? Would it help to boost the
> priority of the manager thread to realtime? Would it help to change the
> way the inter-thread communication works from a pipe to a more low level
> mechanism?

> In fact is there any reason that when you do pthread_create, it doesn't
> just do a clone() right there? It has to clone, change priority (which you
> need the permission to do anyway, right?) and then jump off to the
> specified address..

> Can someone explain why this had to be done in such a roundabout manner
> so that I (we) understand the issues and thus know better how this
> situation could be fixed?

AFAIK there are two issues: clone in 2.2 can not create sibling (just child)
and it'll lead to nasty problems since "parent" thread can exit before "child"
thread. In late 2.3.x it IS fixed. And then you need special handling of
signals: sometimes signals should be delivered to GROUP of threads. AFAIK there
was some userspace kludge proposed to this entirely in userspace without
additional manager thread but I'm not remember this side of problem well...




-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:57    [W:1.716 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site