Date: Sat, 17 Mar 2001 05:27:38 -0800 From: Peter Wemm <peter@netplex.com.au> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/alpha/include types.h src/sys/i386/include types.h src/sys/ia64/include types.h src/sys/powerpc/include types.h src/sys/kern vfs_cache.c src/sys/nfs nfs.h nfs_node.c src/sys/sys fnv_hash.h Message-ID: <200103171327.f2HDRch11517@mobile.wemm.org> In-Reply-To: <200103170931.f2H9V7h77652@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
FWIW; this is not a final implementation or API yet, I have made further tweaks/fixes. Peter Wemm wrote: > peter 2001/03/17 01:31:06 PST > > Modified files: > sys/alpha/include types.h > sys/i386/include types.h > sys/ia64/include types.h > sys/powerpc/include types.h > sys/kern vfs_cache.c > sys/nfs nfs.h nfs_node.c > Added files: > sys/sys fnv_hash.h > Log: > Use a generic implementation of the Fowler/Noll/Vo hash (FNV hash). > Make the name cache hash as well as the nfsnode hash use it. > > As a special tweak, create an unsigned version of register_t. This allows > us to use a special tweak for the 64 bit versions that significantly > speeds up the i386 version (ie: int64 XOR int64 is slower than int64 > XOR int32). > > The code layout is a little strange for the string function, but I was > able to get between 5 to 10% improvement over the original version I > started with. The layout affects gcc code generation choices and this way > was fastest on x86 and alpha. > > Note that 'CPUTYPE=p3' etc makes a fair difference to this. It is > around 45% faster with -march=pentiumpro on a p6 cpu. > > Revision Changes Path > 1.14 +2 -2 src/sys/alpha/include/types.h > 1.21 +2 -2 src/sys/i386/include/types.h > 1.2 +2 -2 src/sys/ia64/include/types.h > 1.2 +2 -1 src/sys/powerpc/include/types.h > 1.53 +7 -14 src/sys/kern/vfs_cache.c > 1.58 +1 -2 src/sys/nfs/nfs.h > 1.44 +3 -29 src/sys/nfs/nfs_node.c > > Cheers, -Peter -- Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au "All of this is for nothing if we don't go to the stars" - JMS/B5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200103171327.f2HDRch11517>