From owner-freebsd-current@FreeBSD.ORG Thu Aug 25 06:32:31 2005 Return-Path: X-Original-To: freebsd-current@FreeBSD.org Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3438816A41F; Thu, 25 Aug 2005 06:32:31 +0000 (GMT) (envelope-from avatar@mmlab.cse.yzu.edu.tw) Received: from www.mmlab.cse.yzu.edu.tw (www.mmlab.cse.yzu.edu.tw [140.138.150.166]) by mx1.FreeBSD.org (Postfix) with ESMTP id C861943D45; Thu, 25 Aug 2005 06:32:30 +0000 (GMT) (envelope-from avatar@mmlab.cse.yzu.edu.tw) Received: by www.mmlab.cse.yzu.edu.tw (qmail, from userid 1000) id 456285078C1; Thu, 25 Aug 2005 14:32:29 +0800 (CST) Received: from localhost (localhost [127.0.0.1]) by www.mmlab.cse.yzu.edu.tw (qmail) with ESMTP id 4010D507889; Thu, 25 Aug 2005 14:32:29 +0800 (CST) Date: Thu, 25 Aug 2005 14:32:29 +0800 (CST) From: Tai-hwa Liang To: Don Lewis In-Reply-To: <200508250357.j7P3vEWM040961@gw.catspoiler.org> Message-ID: <050825142457E.10162@www.mmlab.cse.yzu.edu.tw> References: <200508250357.j7P3vEWM040961@gw.catspoiler.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-current@FreeBSD.org Subject: Re: Witness should be faster now :-) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Aug 2005 06:32:31 -0000 On Wed, 24 Aug 2005, Don Lewis wrote: > I just committed a change to the witness code in HEAD (subr_witness.c > 1.198) that speeds it up considerably. > > I ran three different tasks as benchmarks: > cd /usr/src; make buildworld > > cd /usr/ports; make index > > cd /usr/ports/x11/gnome2; make clean > > I ran the benchmarks without the WITNESS options, with the original > witness code, and with the new witness code. My test hardware is an > Athlon XP 2400+ box with 1G of RAM, SCSI disks, NFS client, and the > DEBUG_NFS_LOCKS kernel option. > > With this change, I'm seeing anywhere from a factor of 5.4 to a factor > of 10.3 reduction in the system CPU time in the witness code. Enabling > the original witness code increased the system CPU time by anywhere from > 330% to 615%. With the new witness code, the system CPU time penalty > for enabling witness dropped to about 60%, which was fairly consistent > across the three benchmarks. Enabling the original witness code > increased the wall time for these benchmarks anywhere from 69% (make > buildworld) to 260%. With the new witness code, the wall time penalty > decreased to the range 12% to 26%. > > If you've been disabling witness because of the large performance > penalty, you may find that this is no longer necessary. > > I've got another potential performance boost in the hopper. I'll > release it if it pans out. > > I'm planning on doing an MFC after 6.0-RELEASE. Thank you. This patch _does_ help me a lot! Before this change, copying files over smbfs was really a PITA -- about 22x slowdown from my observation (1.6GHz Pentium M laptop): smbhost> ls -la nostalgia.pdf -rw-r--r-- 1 avatar users 1247512 2005-06-06 09:27 nostalgia.pdf * WITNESS disabled(cvsup'ed on Aug-23-2005) bsdhost /mnt/samba# dd if=nostalgia.pdf of=/mnt/mfs/x 2436+1 records in 2436+1 records out 1247512 bytes transferred in 1.346903 secs (926208 bytes/sec) bsd host /mnt/samba# dd if=nostalgia.pdf of=/mnt/mfs/x 2436+1 records in 2436+1 records out 1247512 bytes transferred in 1.318945 secs (945841 bytes/sec) * WITNESS enabled(same source tree) bsdhost /mnt/samba# dd if=nostalgia.pdf of=/mnt/mfs/x 2436+1 records in 2436+1 records out 1247512 bytes transferred in 30.512210 secs (40886 bytes/sec) bsdhost /mnt/samba# dd if=nostalgia.pdf of=/mnt/mfs/x 2436+1 records in 2436+1 records out 1247512 bytes transferred in 30.111005 secs (41430 bytes/sec) * WITNESS enabled(same source tree + subr_witness.c:1.198) bsdhost /mnt/samba# dd if=nostalgia.pdf of=/mnt/mfs/x 2436+1 records in 2436+1 records out 1247512 bytes transferred in 1.629300 secs (765674 bytes/sec) bsdhost /mnt/samba# dd if=nostalgia.pdf of=/mnt/mfs/x 2436+1 records in 2436+1 records out 1247512 bytes transferred in 1.636264 secs (762415 bytes/sec) -- Cheers, Tai-hwa Liang