From owner-freebsd-net@FreeBSD.ORG Tue Nov 13 08:41:18 2012 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id AF24A9A2 for ; Tue, 13 Nov 2012 08:41:18 +0000 (UTC) (envelope-from bright@mu.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.freebsd.org (Postfix) with ESMTP id 8A1EA8FC0C for ; Tue, 13 Nov 2012 08:41:18 +0000 (UTC) Received: from kruse-124.4.ixsystems.com (drawbridge.ixsystems.com [206.40.55.65]) by elvis.mu.org (Postfix) with ESMTPSA id 605911A3C1A; Tue, 13 Nov 2012 00:41:18 -0800 (PST) Message-ID: <50A207CC.3060104@mu.org> Date: Tue, 13 Nov 2012 00:41:48 -0800 From: Alfred Perlstein User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:16.0) Gecko/20121026 Thunderbird/16.0.2 MIME-Version: 1.0 To: Andre Oppermann Subject: Re: auto tuning tcp References: <50A0A0EF.3020109@mu.org> <50A0A502.1030306@networx.ch> <50A0B8DA.9090409@mu.org> <50A0C0F4.8010706@networx.ch> <50A13961.1030909@networx.ch> <50A14460.9020504@mu.org> <50A1E2E7.3090705@mu.org> <50A1E47C.1030208@mu.org> <50A1EC92.9000507@mu.org> <50A1FF80.3040900@networx.ch> <50A20251.7010302@mu.org> <50A203F0.3020803@networx.ch> In-Reply-To: <50A203F0.3020803@networx.ch> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: "freebsd-net@freebsd.org" X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Nov 2012 08:41:18 -0000 On 11/13/12 12:25 AM, Andre Oppermann wrote: > On 13.11.2012 09:18, Alfred Perlstein wrote: >> On 11/13/12 12:06 AM, Andre Oppermann wrote: >>> On 13.11.2012 07:45, Alfred Perlstein wrote: >>>> If you are concerned about the space/time tradeoff I'm pretty happy >>>> with making it 1/2, 1/4th, 1/8th >>>> the size of maxsockets. (smaller?) >>>> >>>> Would that work better? >>> >>> I'd go for 1/8 or even 1/16 with a lower bound of 512. More than >>> that is excessive. >> >> I'm OK with 1/8. All I'm really going for is trying to make it >> somewhat better than 512 when un-tuned. > > >>> PS: Please note that my patch for mbuf and maxfiles tuning is not yet >>> in HEAD, it's still sitting in my tcp_workqueue branch. I still have >>> to search for derived values that may get totally out of whack with >>> the new scaling scheme. >>> >> This is cool! Thank you for the feedback. >> >> Would you like me to put this on a user branch somewhere for you to >> merge into your perf branch? > > I can put it into my branch and also merge it to HEAD with > a "Submitted by: alfred" line. > Thank you, that works. Note: it's not even compile tested at this point. I should be able to do so tomorrow. Are there other hashes to look at? I noticed a few more: UDBHASHSIZE netinet/tcp_hostcache.c:#define TCP_HOSTCACHE_HASHSIZE 512 netinet/sctp_constants.h:#define SCTP_TCBHASHSIZE 1024 netinet/sctp_constants.h:#define SCTP_PCBHASHSIZE 256 netinet/tcp_syncache.c:#define TCP_SYNCACHE_HASHSIZE 512 Any of these look like good targets? I think most could be looked at. I've only glanced. I can provide deltas. -Alfred