*BSD News Article 59478


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!news.mel.connect.com.au!munnari.OZ.AU!news.ecn.uoknor.edu!paladin.american.edu!gatech!newsxfer2.itd.umich.edu!newsfeed.internetmci.com!howland.reston.ans.net!Germany.EU.net!Bonn.Germany.EU.net!tools!usenet
From: jk@tools.de (Juergen Keil)
Newsgroups: comp.unix.bsd.netbsd.misc,comp.unix.bsd.bsdi.misc,comp.unix.solaris,comp.unix.aix
Subject: Re: ISP hardware/software choices (performance comparison)
Date: 18 Jan 1996 22:00:49 GMT
Organization: TooLs GmbH, Bonn, Germany
Lines: 72
Distribution: inet
Message-ID: <JK.96Jan18230049@leo.tools.de>
References: <4cmopu$d35@vixen.cso.uiuc.edu> <4crnbe$8a@olympus.nwnet.net>
	<4cs2kn$kfg@cynic.portal.ca> <4cu7t0$mg5@engnews2.Eng.Sun.COM>
	<4cv8j1$59k@park.uvsc.edu> <4cvjpk$rpf@durban.vector.co.za>
	<4d43bt$es8@park.uvsc.edu> <4d5vhg$38p@mail.fwi.uva.nl>
	<4dbun0$j2f@park.uvsc.edu> <4dg90i$6le@mail.fwi.uva.nl>
	<4dh42v$rnv@park.uvsc.edu>
NNTP-Posting-Host: leo.tools.de
In-reply-to: Terry Lambert's message of 16 Jan 1996 21:07:43 GMT
Xref: euryale.cc.adfa.oz.au comp.unix.bsd.netbsd.misc:1928 comp.unix.bsd.bsdi.misc:2072 comp.unix.solaris:57102 comp.unix.aix:68614

In article <4dh42v$rnv@park.uvsc.edu> Terry Lambert <terry@lambert.org> writes:

> From: Terry Lambert <terry@lambert.org>
> Newsgroups: comp.unix.bsd.netbsd.misc,comp.unix.bsd.bsdi.misc,comp.unix.solaris,comp.unix.aix
> Date: 16 Jan 1996 21:07:43 GMT
> Organization: Utah Valley State College, Orem, Utah
> 
> casper@fwi.uva.nl (Casper H.S. Dik) wrote:
> ] >8)	NFS is reliable, does not violate protocol specification.
> ] 
> ] Neither does Solaris 2.x NFS.  Where did you get this idea?
> 
> Someone said it was faster with no other justification.  Plus
> I had to turn it off on a 2.3 box -- but I admit the possibility
> that someone else had turned it on.  If that's the case, it's
> change for change's sake, and that's not good.

Interesting.  There's indeed a flag in the 2.3 (and 2.4/2.5) kernel
that enables the routine that is responsible for Solaris' faster nfs
write performance - this flag is set per default.  If you turn off
this flag you'll get the slower nfs write performance that is roughly
equivalent with SunOS 4.1.x nfs server performance.

But the faster write performance you'll get with Solaris 2.x is *not*
achieved by async writes (i.e. sending acks to the client before
data written resides on non volatile storage).

If you really want to violate the NFS protocol with a Solaris 2.3 NFS
server, you have to *enable* async writes by patching the nfs server
code (see the patch below).  This increases the write performance from
~350 KByte/sec (standard solaris 2.3 unpatched) to ~1000 KBytes/sec on
an ELC with 16MB memory, an old and slow harddisc and Solaris 2.3.


DISCLAIMER: THIS IS AN UNOFFICAL PATCH. USE AT YOUR OWN RISK.

========== asyncnfs.sh ===================================================
#!/bin/sh

patch_53() {
	case "$1" in
	no|off)
		w0=0x94102010
		w1=0x9fc3c000
		;;
	yes|on|*)
		w0=0x94102000
		w1=0x90102000
		;;
	esac
	
	adb -wk /dev/ksyms /dev/mem <<EOF
	rfs_write+794/W $w0
	rfs_write+87c/W $w1
EOF
}



case `uname -r` in
5.3)
	patch_53 "$@"
	;;
*)
	echo "don't know how to patch `uname -r`" >&2
	exit 1
	;;
esac

exit 0
-- 
Juergen Keil          jk@tools.de ...!{uunet,mcsun}!unido!tools!jk