TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Ian Moote
from: Vitus Jensen
date: 1999-09-05 21:11:23
subject: Maximum threads.

Hello Ian,

02.09.99 07:20, Ian Moote wrote a message to ALL :

 IM> I'm writing for Warp 4. How many threads can be started by a
 IM> single process? Unblocked. Real world, not theoretically.

/Unblocked/ means it's a simple mathematical expression depending on TIMESLICE 
and MAXWAIT settings:
The defaults are 32ms timeslice and 3s MAXWAIT.  That means that as long as
you keep the thread count below 3000/32 = 93 every thread will get it's share
of CPU time.  If you increase the thread count some threads won't (and
starvation boosts will play with priorities).

 IM> I know that this is probably a simple question with a complex
 IM> answer, so feel free to be as long-winded and technical as you
 IM> like. [:)

If you don't mind any uneven distribution of CPU time see this post:

===============================================
(OS2PROG, Will Honea to Darin McBride, 24.06.99 02:05)

Darin McBride wrote to Will Honea on 06-23-1999


DM>  WH> Especially when the limit is what, 4096 max?

DM> Good point.  I didn't even bother to look that up.  It seems to be
DM> 4095,  actually.  Probably one reserved for system use.

DM> That said, I also noticed that if you don't specify a 
DM> THREADS= line in your config.sys, it defaults to 64.  Could 
DM> anyone explain to me why that is STILL the default?  :-)  I 
DM> dunno about anyone else, but I have 55 processes and 188 
DM> threads going, and my system is relatively quiet.  64 would 
DM> have killed my system ages ago.  I can understand OS/2 1.0 
DM> running on a 286 having that default, but Warp 4?  Silly.


Funny how these topics seem to pop up in bunches.  I was reading a
posting in an IBM news group where on programmer was trying to push
both NT and OS/2 by spawning threads.  I forget what he said NT crapped
out at - it was somewhat lower than a single OS/2 session could
generate, and he made a point that he could only launch 1500 threads
from a single process, although he could launch another process and
then add another 1500 until he hit the wall just short of 4095 (you're
right) system wide.  I haven't looked this up yet and I was not aware
of a per-process limit other than the system limit.

As for defaults, I see nothing wrong with 64 - that's enough to run a
bare bones command line session.  Warp 4 sets 1024, Warp 3 set (I
think) 256 with Warp connect setting 512.  Warp Server sets 4095, so
the default of 64 is already taken into consideration by the OS install

Will Honea 
=================================================


Bye,
    Vitus

--- Sqed/rexx 108:
* Origin: OPERATOR! Trace this call and tell me where I am. (2:2474/424.1)

SOURCE: echoes via The OS/2 BBS

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.