Date: Thu, 6 May 1999 17:56:55 -0700 (PDT) From: Matthew Dillon <dillon@apollo.backplane.com> To: Zach Brown <zab@zabbo.net> Cc: Andrew Reilly <andrew@lake.com.au>, freebsd-hackers@FreeBSD.ORG Subject: Re: Pentium-III and FreeBSD? Message-ID: <199905070056.RAA39946@apollo.backplane.com> References: <Pine.LNX.4.10.9905060942060.1635-100000@hoser>
next in thread | previous in thread | raw e-mail | index | archive | help
:On Wed, 21 Apr 1999, Andrew Reilly wrote: : :> a) tweaking as to understand the new (KNI SIMD float) instructions. :> b) tweaking cc (egcs) to emit those, if it can (much less likely, my guess) :> c) tweaking the kernel to save and restore the new state on task switches. : :its also quite worth using the magical cache instructions (prefecth, cache :avoiding stores) in some parts of the kernel. We're having fun with these :in parts of the linux kernel. Mail me if you want to discuss things :further :) : :-- zach : :- - - - - - :007 373 5963 The SMP guys have been playing with the tlb instructions to reduce the number of tlb flushes and interprocess interrupts. This has produced a measureable performance improvement. I don't see much advantage to trying to fine-tune some of the weirder instructions, though... it's usually a waste of time and tends to obscure the larger issues that, if fixed, would have yielded an even greater gain. A good example of this in FreeBSD is the page coloring code in the VM system, the multiply-linked lists and hash table access methods used to manage I/O, and (major bias here) radix tree based swap management system in FreeBSD-current. In regards to FP: The best place for extreme FP optimization is in a high level FP library, not in native compiler-produced code. The reason for this is simple: Many of these new instructions work only with specific processors or specific revs of processors. Most of Intel's new FP instructions don't work on a K6. If you produce a native-compiled binary with such instructions embedded within it, it will not run on all platforms. On the otherhand, if you produce a high level FP library which can be taylored to the specific platform it is installed on, then distributed binaries can utilize the library and not have to be compiled for a specific platform. -Matt Matthew Dillon <dillon@backplane.com> To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199905070056.RAA39946>