• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: -mtune on intel machine
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: -mtune on intel machine


  • Subject: Re: -mtune on intel machine
  • From: Eric Gorr <email@hidden>
  • Date: Thu, 21 May 2009 09:47:13 -0400

So, would using 'generic', as opposed to 'none', be an appropriate selection for the -mtune flag for a Release build?



On May 20, 2009, at 2:22 PM, William H. Schultz wrote:

Apparently, I forgot to hit "reply all" this time, so you were the only one that received my reply. Oops.

Anyway, I looked again, and that *is* what it says now. It didn't used to apply to all. The Xcode user interface still reflects this in that it doesn't show anything for Intel builds. Since Apple never shipped an Intel CPU older than the original "Core" processor, it seems to me that specializing on anything less would be a waste of potential optimizations. The latest two processors listed are "prescott" and "nocona," which are both versions of the Pentium4, but "Nocona" was the first x86-64 Intel processor. So, until GCC (or some other future compiler) is optimzed for a newer processor, we're stuck with these.


http://en.wikipedia.org/wiki/List_of_Intel_Xeon_microprocessors#.22Nocona.22_.28standard-voltage.2C_90_nm.29 http://en.wikipedia.org/wiki/Pentium_4#Prescott

On May 20, 2009, at 10:19 AM, Eric Gorr wrote:


On May 20, 2009, at 1:00 PM, William H. Schultz wrote:

As I understand it from the GCC man page, mtune does not apply to an Intel build.

What are you basing this on?

In the −mtune=cpu-type section, it says, for example,

generic
Produce code optimized for the most commonIA32/AMD64/EM64T processors. If you know the
CPU on which your code will run, then you should use the corresponding −mtune option instead
of −mtune=generic. But, if you do not knowexactly what CPU users of your application will
have, then you should use this option.


As newprocessors are deployed in the marketplace, the behavior of this option will change.
Therefore, if you upgrade to a newer version of GCC, the code generated option will change to
reflect the processors that were most common when that version of GCC was released.
There is no−march=generic option because−march indicates the instruction set the compiler
can use, and there is no generic instruction set applicable to all processors. In contrast, −mtune
indicates the processor (or, inthis case, collection of processors) for which the code is optimized.



i686
Same as generic, but when used asmarchoption, PentiumPro instruction set will be used, so
the code will run on all i686 familly chips.


While the i686 is not in the popup menu in the GUI (bug?), it does appear to be a valid option.


What am I not understanding?

Try this to open the gcc man page in Preview:

man -t gcc | open -f -a Preview

It makes it a lot more palatable read.

neat trick. thanks.


------------------------------- Hank Schultz Cedrus Corporation http://www.cedrus.com/



_______________________________________________ Do not post admin requests to the list. They will be ignored. Xcode-users mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
  • Follow-Ups:
    • Re: -mtune on intel machine
      • From: Eric Gorr <email@hidden>
References: 
 >-mtune on intel machine (From: Eric Gorr <email@hidden>)

  • Prev by Date: Re: Tabs/spaces preferences
  • Next by Date: Re: -mtune on intel machine
  • Previous by thread: -mtune on intel machine
  • Next by thread: Re: -mtune on intel machine
  • Index(es):
    • Date
    • Thread