Date: Wed, 11 Oct 1995 17:00:38 -0700 (MST) From: "Richard S. Straka" <straka@indirect.com> To: questions@FreeBSD.org Subject: NFS performance Message-ID: <Pine.BSD/.3.91.951011161124.21926A-100000@bud.indirect.com>
next in thread | raw e-mail | index | archive | help
I have set up my 486DX-100 as an NFS server for a network that currently has PCNFS running on a Pentium-100 and a 386DX-25 (all machines are using Intel EtherExpress Boards). I am using a FreeBSD-stable kernel which I downloaded from wcarchive.cdrom.com on approx 1 Oct 95. The server filesystem is mounted on the Pentium with rsize=8192 and wsize=8192. While reading from the NFS server, the Pentium can achieve 600-700KB/sec, nearly the speed of the ether. While writing to the server, however, the speed of the tranfers seem to be limited to about 100KB/sec with alot of disk thrashing occuring on the server. While running SYSTAT on the server, I noticed that the processor idle time is still greater than 50% but the disk transfer rate is around 400KB/sec with 40-50 seeks/sec. Why is the disk transfer rate 4 times the file transfer rate between the client and the server and why so many seeks? I have used NETSTAT to verfy that I am not dropping any UDP packets. In sys/nfs/nfs_serv.c in the kernel code there is a compiler directive NFS_ASYNC. When I compile the kernel with this directive set, the file transfer speed while writing to the server increases to about 400KB/sec (still not the 600-700KB/sec realized while reading from the server) and the apparent disk thrashing is gone (400KB/sec disk transfers with 10-20 seeks/sec). This change, however, has made the server file system very vunerable to system crashes. Two power outages (even after the system had been idle for several minutes - no nfs transfers) have resulted in broken filesystems (more than 100 bad INODES). In both instances, the file system was unrecoverable (FSCK core dumped) and a new filesystem had to be created on the drive. Are there any suggestions for improving the speed of the clients writing to the server while still maintaining a reasonable tolerance to system crashes? Any help would be greatly appreciated. Thanks in advance. My e-mail address is straka@indirect.com.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSD/.3.91.951011161124.21926A-100000>