On Wed, Aug 05, 2009 at 07:38:20AM -0500, Scott Bennett wrote: > On Wed, 5 Aug 2009 12:19:23 +0200 Roland Smith <rsm...@xs4all.nl> wrote: > >On Wed, Aug 05, 2009 at 10:54:07AM +0100, David Southwell wrote: > >> I have found > >> http://docs.freebsd.org/info/gcc/gcc.info.Optimize_Options.html. > >> > >> I am about to build a new kernel am starting to dig a bit deeper into > >> things I > >> have, until now, taken for granted. > >> > >> The above link is very informative in technical terms about how to control > >> optimization but I find it difficult to interpret the info in a way that > >> tells > >> me what might work best on my own system (Intel quad Core) with 8G of ram. > > > >The build system takes care of that, once you have set the correct > >CPUTYPE in /etc/make.conf. For a quad-core, set CPUTYPE=nocona. See > >make.conf(5), /usr/src/share/mk/bsd.cpu.mk and > >/usr/src/sys/conf/kern.pre.mk. > > As I read the man page for [g]cc, though, setting -march=nocona (which > is where the CPUTYPE information ends up in the cc commands) tells the > compiler which base instruction set to use and which model of instruction > scheduling to use, but to get the rest of the model-dependent features used, > he would still need to add "-mmmx -msse -msse2 -msse3" at a minimum for most > other compilations, though these would not be advisable for kernel > compilations.
Both i386 and amd64 explicitly prohibit the use of FPU, SSE and other SIMD operations inside the kernel itself. These operations are exclusively reserved for user applications. See /usr/src/sys/conf/kern.mk. The makefiles for the kernel add appropriate options depending on the CPUTYPE. Roland -- R.F.Smith http://www.xs4all.nl/~rsmith/ [plain text _non-HTML_ PGP/GnuPG encrypted/signed email much appreciated] pgp: 1A2B 477F 9970 BA3C 2914 B7CE 1277 EFB0 C321 A725 (KeyID: C321A725)
pgpTqmfJj2L92.pgp
Description: PGP signature