On Thu, 2005-06-09 at 10:03 -0400, Horst von Brand wrote:
Arjan van de Ven arjanv@redhat.com wrote:
Of course, on through -m64 was as expected. I'm just a bit surprised that it didn't say mtune=k8 since it was definitely building on one ... which begs the question ... is GCC (and hence the entire x86_64 distribution) being built this way? What are the K8 performance implications? I've seen a few things that indicate that Nocona cores running K8 code look pretty bad in some areas compared to optimized code...however, I find nothing to indicate how nocona optimized code runs on the K8.
AMD cpus are very good at running just about anything you throw at it (think about it; with their marketshare... most code out there is optimized for intel cpus so their cpus are effectively required to deal well with such code). The reverse unfortunatly isn't the case.
AFAIU, they are talking about /64 bit/ code here. There the situation is almost exactly the other way around, isn't it?
What Arjan is saying is this: AMD Opteron/Athlon64 CPUs do much, much better with -mtune=nocona than Intel EM64T CPUs do with -mtune=k8. It appears that the Opteron/Althon64 are more flexible in this regard. Therefore, since the hit for -mtune=nocona on Opteron is much smaller than -mtune=k8 on EM64T, the distro uses -mtune=nocona.
The question, distilled:
Would you like: (a) Small speed hit for Opteron users, OR (b) much larger speed hit for EM64T users?
(a), ie -mtune=nocona everywhere, seems to be the fairest option here for everybody since we obviously cannot make 1 build of Fedora Core for Opteron and 1 comletely separate build of Fedora Core for EM64T.
Dan