From owner-freebsd-threads@FreeBSD.ORG Tue Jan 27 04:21:14 2004 Return-Path: Delivered-To: freebsd-threads@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F1D8116A4CE for ; Tue, 27 Jan 2004 04:21:14 -0800 (PST) Received: from rwcrmhc13.comcast.net (rwcrmhc13.comcast.net [204.127.198.39]) by mx1.FreeBSD.org (Postfix) with ESMTP id A099443D5A for ; Tue, 27 Jan 2004 04:21:09 -0800 (PST) (envelope-from julian@elischer.org) Received: from interjet.elischer.org ([24.7.73.28]) by comcast.net (rwcrmhc13) with ESMTP id <2004012712210801500kc3jfe>; Tue, 27 Jan 2004 12:21:09 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id EAA88096; Tue, 27 Jan 2004 04:21:08 -0800 (PST) Date: Tue, 27 Jan 2004 04:21:07 -0800 (PST) From: Julian Elischer To: Daniel Eischen In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-threads@freebsd.org Subject: Re: "maxthr" state X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Jan 2004 12:21:15 -0000 On Tue, 27 Jan 2004, Daniel Eischen wrote: > On Mon, 26 Jan 2004, Craig Rodrigues wrote: > > > On Fri, Jan 23, 2004 at 03:25:19PM -0800, Julian Elischer wrote: > > > > > > > > > On Fri, 23 Jan 2004, Alex Boisvert wrote: > > > > > > > > > > > Nevermind, I discovered the kernel sysctl > > > > "kern.threads.max_threads_per_proc" with default value 150. I bumped > > > > the value to 300 and the app runs fine. (We simulate 250 clients with > > > > 250 connections or threads, hence the need for a large value...) > > > > > > yes, the number could be made bigger but we didn't want to make it > > > too easy for wildly out-of-control threadded programs to > > > kill the system while the threading system is still "young".. > > > > 150 is a perfectly reasonable number to start with, but I can see it > > could be a problem later on when KSE goes "live". > > Due to programming languages like Java, there are a lot > > of threads-happy coders out there (unfortunately). > > Remember though that kern.threads.max_threads_per_proc are the > number of kernel threads for the process, not the number of > userland threads. Threads blocked in userland don't consume > a kernel thread. On the other hand, if the threads are IO > bound, they will get blocked in the kernel and consume a > kernel thread. We are limitted by hardware to 8191 kernel threads on x86 but that could be a LOT of user threads.. Hmm how many 64k stacks can you fit in 2GB? hmmmm 2^16 into 2^31... well that limits us to 32k threads :-) > > -- > Dan Eischen > >