Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 01 Feb 2007 20:55:26 +0100
From:      Jorn Argelo <jorn@wcborstel.com>
To:        Garrett Cooper <youshi10@u.washington.edu>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: gcc compiler cputype, prescott or nocona confusion
Message-ID:  <45C245AE.6020308@wcborstel.com>
In-Reply-To: <45C1593C.8050003@u.washington.edu>
References:  <200701312340.38593.salkillen@internode.on.net>	<209e855bb68d64550ec4e384b3983664@mail.wcborstel.com> <45C1593C.8050003@u.washington.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
Garrett Cooper wrote:
> Jorn Argelo wrote:
>>
>> On Wed, 31 Jan 2007 23:40:38 +1100, Scott Killen 
>> <salkillen@internode.on.net> wrote:
>>> Hi,
>>>
>>> When recompiling the world or kernel in FreeBSD i386 Rel 6.1 with,
>>>
>>> "# make buildworld"
>>> or
>>> "# make buildkernel KERNCONF=MYSMPCONF"
>>>
>>> (or building anything anything else for that matter), even though I 
>>> have
>>> "CPUTYPE?=nocona" set in my "/etc/make.conf" file the compiler seems to
>>> head
>>> back to a default of  "-march=prescott" when compiling many of the
>>> functions
>>> on a Dual Xeon 3.6g (nocona) machine!
>>>
>>> This doesn't happen when compiling for other machine types, I've 
>>> tried it
>>> on a
>>> Dual PentiumPro, Dual PII, Dual PIII setting the CPUTYPE to the correct
>>> cpu
>>> type and the -march sticks to the assigned cpu type through all 
>>> operations
>>> and produces nice quick optimized code.
>>>
>>> Why is this so?
>>>
>>> Is it because the "nocona" machine type optimization refers to the 
>>> EMT64
>>> technology and thus is rejected when compiling for i386 targets rather
>>> than
>>> amd64 or emt64 targets and Gcc rejects it?
>>
>> That's right. AFAIK the Nocona core is a prescott with EM64T support 
>> (feel free to correct me if I am wrong). Basically you have an i386 
>> version of FreeBSD, and with EM64T instructions enabled GCC will 
>> build a 64-bit version of FreeBSD. I think that's the reason it 
>> switches back to prescott.
>
> Most of the time you're right. However (for starters), some nocona 
> chips feature 2MB cache instead of 1MB cache:
>
> <http://www.anandtech.com/IT/showdoc.aspx?i=2447&p=2>.
>
> I'd have to look more in depth, but OTOH the nocona also featured some 
> architecture upgrades, other than just the "64-bit'ness"
>
> I heard that gcc 3.4.x was pretty funky with the nocona processors 
> though, and prescott's a more stable target; that changed a bit in gcc 
> 4.x I think. Or maybe I'm just mixing up nocona and yonah in this case.
> -Garrett
> _______________________________________________
> freebsd-questions@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to 
> "freebsd-questions-unsubscribe@freebsd.org"
>
Yonah is the Pentium M version of the first Core generation I believe. 
Or maybe it was still a Netburst, I can't remember.

Jorn



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45C245AE.6020308>