Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Feb 2007 13:42:10 -0800 (PST)
From:      youshi10@u.washington.edu
To:        freebsd-questions@freebsd.org
Subject:   Re: gcc compiler cputype, prescott or nocona confusion
Message-ID:  <Pine.LNX.4.43.0702011342100.23655@hymn05.u.washington.edu>
In-Reply-To: <45C245AE.6020308@wcborstel.com>

Next in thread | Previous in thread | Raw E-Mail | Index | Archive | Help
On Thu, 1 Feb 2007, Jorn Argelo wrote:

> 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
>
> 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

Yonah is the first version of the Core Duo generation processors.
-Garrett




Want to link to this message? Use this URL: <http://docs.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.43.0702011342100.23655>