From owner-freebsd-arch@FreeBSD.ORG Sat Dec 2 05:46:30 2006 Return-Path: X-Original-To: freebsd-arch@freebsd.org Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5649816A412; Sat, 2 Dec 2006 05:46:30 +0000 (UTC) (envelope-from frank@exit.com) Received: from tinker.exit.com (tinker.exit.com [206.223.0.1]) by mx1.FreeBSD.org (Postfix) with ESMTP id 02E1943CA2; Sat, 2 Dec 2006 05:46:10 +0000 (GMT) (envelope-from frank@exit.com) Received: from jill.exit.com (jill.exit.com [206.223.0.4]) by tinker.exit.com (8.13.8/8.13.8) with ESMTP id kB25k6JO043058; Fri, 1 Dec 2006 21:46:06 -0800 (PST) (envelope-from frank@exit.com) Received: from jill.exit.com (localhost [127.0.0.1]) by jill.exit.com (8.13.6/8.13.4) with ESMTP id kB25k6u1060183; Fri, 1 Dec 2006 21:46:06 -0800 (PST) (envelope-from frank@exit.com) Received: (from frank@localhost) by jill.exit.com (8.13.6/8.13.6/Submit) id kB25k5D5060182; Fri, 1 Dec 2006 21:46:05 -0800 (PST) (envelope-from frank@exit.com) X-Authentication-Warning: jill.exit.com: frank set sender to frank@exit.com using -f From: Frank Mayhar To: Matthew Dillon In-Reply-To: <200612020454.kB24sIpq071255@apollo.backplane.com> References: <20061119041421.I16763@delplex.bde.org> <20061126174041.V83346@fledge.watson.org> <20061128142218.P44465@fledge.watson.org> <45701A49.5020809@fer.hr> <20061202094431.O16375@delplex.bde.org> <200612020454.kB24sIpq071255@apollo.backplane.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: Exit Consulting Date: Fri, 01 Dec 2006 21:46:04 -0800 Message-Id: <1165038364.8249.8.camel@jill.exit.com> Mime-Version: 1.0 X-Mailer: Evolution 2.8.2.1 FreeBSD GNOME Team Port X-Virus-Scanned: ClamAV 0.88.4/2269/Fri Dec 1 10:17:05 2006 on tinker.exit.com X-Virus-Status: Clean Cc: Robert Watson , Ivan Voras , freebsd-arch@freebsd.org Subject: Re: What is the PREEMPTION option good for? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: frank@exit.com List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Dec 2006 05:46:30 -0000 On Fri, 2006-12-01 at 20:54 -0800, Matthew Dillon wrote: > The single biggest NFS client performance issue I have encountered > in an environment where most of the data can be cached from earlier > runs is with negative name lookups. Due the large number of -I > options used in builds, the include search path is fairly long and > this usually results in a large number of negative lookups, all of > which introduce synchronous dead times while the stat() or open() > waits for the over-the-wire transaction to complete. > > The #1 solution is to cache negative namecache hits for NFS clients. > You don't have to cache them for long... just 3 seconds is usually > enough to remove most of the dead time. Also make sure your access > cache timeout is something reasonable. Back in my early Locus days, 1994 or 95, we ran into the same phenomenon while benchmarking our distributed file system. The SVR4.2 name cache didn't cache negative lookups and that killed us on certain performance benchmarks, even locally (since we nearly doubled the code path) much less when the file system actually lived on a remote node. -- Frank Mayhar frank@exit.com http://www.exit.com/ Exit Consulting http://www.gpsclock.com/ http://www.exit.com/blog/frank/