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 LiangReceived on Thu Aug 25 2005 - 04:32:31 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:42 UTC