perf@efd.lth.se (Per Foreby) (03/16/91)
Thanks for a lot of good advice. This is a summary of the responses, but first my original posting: ------------------------------------------------------------------------------ What is the best thing I can do in order to increase NFS performance on our central file server? Facts: ----- * Sun 3/280 * SunOs 4.1 * 8 Mb memory * 5 Gb disk (6 disks on 2 xd753) * Serves approx 100 clients with USER files (the clients have their root and swap on other servers) * Low write percentage (about 3%) (write + create + remove) * CPU idle time > 50% * Load average approx 5. Possible solutions: ------------------ 1. Upgrade to sun4 (4/380?) * Does this help when the cpu is idle most of the time? 2. Add more memory * Gives me more diskcache. * Is there any way to list some stats for the cache? vmstat showes about 250 K free list size, but does this include the disk cache, or can the free list borrow pages from the disk cache if it needs more? 3. Buy a Prestoserve * Is this really usefull when the write percentage is low? ------------------------------------------------------------------------------ Now, the summary of the solution. 000 meens free tuning, $$$ bying things. $$$ Almost everyone meant that an upgrade to a Sun-4 would be a waste of money. First, use the available CPU better (by using some of the suggestions below). $$$ Prestoserve is a write accelerator, hence it will help only marginally due to our low write percentage. 000 Spread the disk load evenly between the controllers and between the disks. (Check with `iostat' and `vmstat -i'.) $$$ Add more controllers. The XD controllers can handle about 40 transactions per second. Each disk can deliver about 25-30 transactions per second. The rest is simple arithmetic... $$$ Add more disks to spread seek and rotational delay times. 000 Add more nfsd's if you have the enough memory for them. Otherwise the exessive swapping and context switches can make things worse. (Check with `vmstat' or `iostat -c'.) Someone suggested 8 nfsd's per ethernet interface. $$$ Add more memory. The general view seems to be that we need another 4-8 Megs. 000 Add more inode buffers. $$$ Buy an OMNI network card. It has its own CPU and cache and speeds up the network traffic. 000 Use tmpfs on the clients. $$$ Buy an Auspex NS5000 or NS3000. It's a dedicated NFS file server with separate processors for ethernet, filesystem and disk I/O. 000 Get Hal Stern's paper `SunOs 4.1 Performance Tuning'. Availble from titan.rice.edu in /public/sunos-perf.uu and sunos-perf-slides.uu. GET IT, READ IT! $$$ Redisign the network and use multiple ethernets. Some said this would slow things down. $$$ There is a new software product called eNFS which is supposed to do some magic. 000 Don't run any aplications on the server. 000 Use the automounter. (We already do). --Per Foreby; perf@efd.lth.se; LTH-E, Box 118, S-22100 LUND, Sweden; 046-107492