This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [libc-alpha] Mysql and their patches to LinuxThread


Hello,

> The problem with user-defined stacks is that ( at least last time I checked), 
> this had to be set at compile time. This means that if the user links against 
> default LinuxThreads, he does not get the feature in most cases, so we are 
> stuck with the 2MB spacing.

Not true.  You don't have to compile LinuxThreads in glibc specially
to get support for user-defined stacks.  This has been the case ever
since the feature became available.  However, unless you have
configured glibc for i686 or above (i.e. with support for a
thread-specific register), the use of _many_ user-defined stacks
becomes rather slow, please check the implementation of thread_self().

> Monty must have been tired when he wrote the above paragraph - he works long 
> hours. If you do not patch the thread library, you cannot have more than 1021 
> connections since you can have only 1024 threads, and first 3 are taken for 
> internal purposes at the start.

'Only' 1024 threads?  How many CPUs are you targetting for?  If it's
less than 100, creating 1000 threads will never get you good
performance, not just because of user-defined stacks.  IMHO, if you
_require_ that many threads, that is a design bug that should be fixed
with high priority.

Regards,
Wolfram.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]