Date: Wed, 24 Jan 2007 00:18:38 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: fs@freebsd.org, kib@freebsd.org Subject: more lost dotdot caching pessimizes nfs especially Message-ID: <20070123233124.R33734@delplex.bde.org>
next in thread | raw e-mail | index | archive | help
I suspect that recent locking fixes near dotdot are responsible for slowing down builds over nfs even further by increasing the number of RPCs. Times and RPC counts for building a RELENG_4 kernel under -current on a Turion X2 2GHz: With i386 SMP kernel built a few days ago: %%% make depend: 9.31 real 5.04 user 1.25 sys Lookup Read Write Access Getattr Other Total 1269 541 591 20633 447 112 23593 make: 67.28 real 55.55 user 3.86 sys Lookup Read Write Create Access Fsstat Other Total 4633 2370 5291 436 22269 1726 14 36739 %%% With i386 SMP kernel built an hour ago: %%% make depend: 13.70 real 5.38 user 1.56 sys Lookup Read Write Access Getattr Other Total 14008 541 591 38615 447 96 54298 make: 71.49 real 55.21 user 4.45 sys Lookup Read Write Create Access Fsstat Other Total 19237 2370 5292 436 41860 1714 14 70923 %%% Note that only the number of Lookups and Access's changed significantly (Access goes with Lookup). This is without -j4 so that the slowdown is more obvious. "make depend" is not parallelized, so -j4 has little effect for it, but -j4 now speeds "make" up by even more than a factor of 2 by running more RPCs in parallel. The speedup used to be only from 67.3 to 34.3 seconds, but now it is from 71.5 to 34.8 seconds. This is with my old fixes and hacks to reduce RPCs, and the network tuned for latency (80 usec ping -f latency). Plain -current would use about 120000 RPCs for "make" and thus take 10-20 seconds longer. It would use a bit less than that for "make depend" and thus take 5-10 seconds longer. "make depend" would take about twice as long as it should. It can easily take much longer than that on machines with larger network latency. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070123233124.R33734>