Re: Nehelem 64 bit, kern conf and /etc/make.conf

2010-01-31 Thread b. f.
I just installed FreeBSD 8.0 (amd64) onto my new Nehalem-based system.

CPU: Intel(R) Xeon(R) CPU   L5506  @ 2.13GHz (2128.00-MHz K8-class CPU)
  Origin = GenuineIntel  Id = 0x106a5  Stepping = 5
  
 Features=0xbfebfbffFPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE
  
 Features2=0x9ce3bdSSE3,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,DCA,SSE4.1,SSE4.2,POPCNT
  AMD Features=0x28100800SYSCALL,NX,RDTSCP,LM
  AMD Features2=0x1LAHF
  TSC: P-state invariant


I am now in the process of configuring the kernel config file.

A few questions;

1. Is the kernel config file I want to modify
/usr/src/sys/amd64/conf/GENERIC ?  (Copy that file as /root/PORKY, and
set up a symlink from /usr/src/sys/amd64/conf to /root/PORKY.)

You don't have to do this: you could just use GENERIC.  But if you
want to build a custom kernel, and you are not familiar with all of
the kernel options, GENERIC is a good starting point.


2. What should I set this line to:
cpu HAMMER
Right now it's HAMMER, I have no idea what Hammer is.  What would be
the best thing to set it to?  I want to be as specific as possible for
my CPU type.

Leave this alone.  If you change it, you will break your kernel.  It's
not meant to be customized: it's just a name that was chosen because
it happened to be AMD's prototype 64-bit CPU at the time the amd64
port was being written.


3. The instructions here:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
mention a line like this:
machinei386
(which would probably by amd64 in my case), but the machine line
is missing entirely from GENERIC conf file.  Should I add it?

No, leave it alone.  The documentation is outdated; this option is now
set in DEFAULTS, which is a small list of very important stuff that
every kernel of a certain architecture must contain in order to
function properly.   It is not meant to be customizable.


4. In /etc/make.conf, I'm used to having, for example:
CPUTYPE?=core2
What would be my CPU in this case (Xeon L5506)?  I know this line is
not necessary, but I'd like to set it to the most specific kind of CPU
possible for my case to gain any optimizations, so long as it does not
make my system unstable.

This option is only used to set the flags for the C and C++ compilers.
 The base system compiler for FreeBSD 7-9 is a patched version of gcc
4.2, and is hooked up to a patched version of binutils 2.15.  This
compiler suite and tool-chain are not new enough to take full
advantage of your CPU: the best you can do is set it to auto-detect
your CPU, or hard-code it to the most modern compatible CPU that
existed when the compiler suite and tool-chain were written.  However,
some people have started to use newer compilers and tool-chains from
FreeBSD Ports (some ports even require it), and if you do that, you
may need a different value.  Probably, your best bet is to use:

CPUTYPE?= native

and to check to make sure that the base system compiler is actually
equating this with 'nocona', and enabling all of your SIMD extensions
that it supports.  This won't make a great deal of difference for
kernel performance, but it will affect other base system programs and
ports if you are using CFLAGS with -march or other optimization flags.


b.
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


Nehelem 64 bit, kern conf and /etc/make.conf

2010-01-30 Thread Nerius Landys
I just installed FreeBSD 8.0 (amd64) onto my new Nehalem-based system.

CPU: Intel(R) Xeon(R) CPU   L5506  @ 2.13GHz (2128.00-MHz K8-class CPU)
  Origin = GenuineIntel  Id = 0x106a5  Stepping = 5
  
Features=0xbfebfbffFPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE
  
Features2=0x9ce3bdSSE3,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,DCA,SSE4.1,SSE4.2,POPCNT
  AMD Features=0x28100800SYSCALL,NX,RDTSCP,LM
  AMD Features2=0x1LAHF
  TSC: P-state invariant


I am now in the process of configuring the kernel config file.

A few questions;

1. Is the kernel config file I want to modify
/usr/src/sys/amd64/conf/GENERIC ?  (Copy that file as /root/PORKY, and
set up a symlink from /usr/src/sys/amd64/conf to /root/PORKY.)

2. What should I set this line to:
cpu HAMMER
Right now it's HAMMER, I have no idea what Hammer is.  What would be
the best thing to set it to?  I want to be as specific as possible for
my CPU type.

3. The instructions here:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
mention a line like this:
machinei386
(which would probably by amd64 in my case), but the machine line
is missing entirely from GENERIC conf file.  Should I add it?

4. In /etc/make.conf, I'm used to having, for example:
CPUTYPE?=core2
What would be my CPU in this case (Xeon L5506)?  I know this line is
not necessary, but I'd like to set it to the most specific kind of CPU
possible for my case to gain any optimizations, so long as it does not
make my system unstable.
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org