From owner-freebsd-net@FreeBSD.ORG Mon Nov 12 07:10:39 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 BF7F691C; Mon, 12 Nov 2012 07:10:39 +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 A1D218FC0C; Mon, 12 Nov 2012 07:10:39 +0000 (UTC) Received: from Alfreds-MacBook-Pro-5.local (c-67-180-208-218.hsd1.ca.comcast.net [67.180.208.218]) by elvis.mu.org (Postfix) with ESMTPSA id 36F641A3CC0; Sun, 11 Nov 2012 23:10:39 -0800 (PST) Message-ID: <50A0A0EF.3020109@mu.org> Date: Sun, 11 Nov 2012 23:10:39 -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: freebsd-net@freebsd.org, Peter Wemm , Adrian Chadd Subject: auto tuning tcp Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit 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: Mon, 12 Nov 2012 07:10:39 -0000 I noticed that TCBHASHSIZE does not autotune. What do you think of the following algorithm? Basically round down to next power of two based on nmbclusters / 64. -Alfred #include #include #include int main(int argc, char **argv) { int nmbclusters; int pow2cl; nmbclusters = atoi(argv[1]); pow2cl = 1 << (fls(nmbclusters / 64)-1); if (pow2cl < 512) pow2cl = 512; printf("%d\n", pow2cl); return (0); }