Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Xeons are faster than Opterons, have more features, and are more power efficient...

Why would Apple switch?
 
I'm thinking in terms of compling the code. There are differences, despite the instruction set, so compilers do have components for specific CPU's, lending to optimization.

Presumably, Apple's written their own compiler (or outsourced it), and it was designed around the Intel chips/chipsets. The specifics occur during the OS installation (parts needed get installed, but others may be present on media), and is transparent to the user. Not that it won't work, it just won't run as well as it should. So I'm imagining a step backwards per se. Like going from SL (supposed to be optimized) to Leopard, or worse. :p
If you were correct, you could not build a Hackintosh using an AMD setup. That is not the case. When you buy applications for Windows, you don't buy an AMD version or an Intel version. That's not how things work....

S-
 
If you were correct, you could not build a Hackintosh using an AMD setup. That is not the case. When you buy applications for Windows, you don't buy an AMD version or an Intel version. That's not how things work....

S-

And OS X running on AMD is 100% bug free?

Of course that a dumb question because none of us have aggressively tested it. But I'll bet I can find fatal errors the first day in that don't exist on an Intel platform. :p


That's just how things work...
 
If you were correct, you could not build a Hackintosh using an AMD setup. That is not the case. When you buy applications for Windows, you don't buy an AMD version or an Intel version. That's not how things work....

S-
Applications are above the level I'm refering to. The OS loads the different components for the system hardware, and does differ for AMD and Intel, even though they use the same instruction set.

You're thinking too high. Get deeper into the physical layers, and the architecture does have bearing.
 
You're thinking too high. Get deeper into the physical layers, and the architecture does have bearing.
Sure.....all OSes need to have drivers supplied to support different chips sets. If those drivers are not present, fatal errors are sure to follow. But the issue is not related directly to the processor used from an instruction set perspective.

It's a driver issue.

For example, Vista needs drivers to support various chip sets used with AMD processors. But, the base code itself does not change. In other words, there is not an AMD version of Vista and an Intel version.

S-
 
Sure.....all OSes need to have drivers supplied to support different chips sets. If those drivers are not present, fatal errors are sure to follow. But the issue is not related directly to the processor used from an instruction set perspective.

It's a driver issue.

For example, Vista needs drivers to support various chip sets used with AMD processors. But, the base code itself does not change. In other words, there is not an AMD version of Vista and an Intel version.

S-
Let's see if I can give a nice example.

Let's say in the case of SSE & SSE2. Yes, they're additions in instruction set, and not available on all Intel processors. A quick change in the /arch during compile will fix that. Cool. ;)

Now think of say, the VT-d switch. Not quite so easy, as it doesn't exist in all of Intel's processors, and certainly not in AMD models (AMD-V instead, and is also limited to certain parts).

My point, is the switch from one manufacturer (Intel) to another (AMD) would require a rework of the compiler, even though they share most of the x86 instruction set for obvious reasons. Intel couldn't get it right, and licensed it from AMD. :p But there's still differences that result in the architecture (different instructions unique to their respective manufacturers, even if it's for the same/similar function).

Now let's consider the OS (specific functionality). If you want Kernel based VM (real time guest support), it has to be compiled for it, and is specific to which ever CPU make is in the machine.

Or are you thinking in terms of a simple set of x86 instructions (minimum architecture) based compiler, develop the OS off this (unoptimized/no support for certain functions), and pushing such details to the applications development groups (i.e SSE/SSE2, virtualization,...)?
 
nanofrog,

Do you buy an OS or an application these days for Windows and have to ask for the AMD version? No. Why? Because developers make sure the compilers output Intel and AMD compatible code.

Apple does not have to do this since they know all their code is going to run on Intel processors. But, I would wager that they too have the compilers they use set to output code that is both AMD and Intel compatible.

Now, when it comes to certain types of code, such as that used for hypervisor support for visualization and paravirtualization, yes, you need CPU specific software. But that does not require a recompilation of the whole OS. Zen, for example supports both Intel VT and AMD-V.

S-
 
nanofrog,

Do you buy an OS or an application these days for Windows and have to ask for the AMD version? No. Why? Because developers make sure the compilers output Intel and AMD compatible code.
That was my point. ;)

There are differences that have to be taken into account for specific architectures in a compiler, whether it's the same manufacturer (different feature sets in the part offerings), or different vendors alltogether. Without it, you can't develop products that can take advantage of the special functions (specific instruction(s)).

Perhaps in some cases, a brute force approach can be used (no compiler support), but it's not pretty in my experience (really buggy, if it works at all). Better to get the compiler running properly first IMO. :)

Apple does not have to do this since they know all their code is going to run on Intel processors. But, I would wager that they too have the compilers they use set to output code that is both AMD and Intel compatible.
No, it doesn't actually matter on a Mac, as they don't run AMD. :cool:

In the case of Apple, I don't know if they created the compiler from scratch, or built off something that included the AMD support (possibly contracted out).

Assuming the prior, it would likely need a redesign in order to switch to AMD parts (or any other). The latter OTOH, may not take much work at all, but would still require some changes that require a recompile (change /arch from the Intel to AMD, and some optimization).

It's all academic in a sense (it works, and the systems are Intel only), but would be applicable for any change in CPU vendor. Applicable though, if P.A Semi develops laptop or even desktop parts in the future. ;) Certainly applicable to Apple's mobile devices now. :) Perhaps a long term goal for the laptop and iMac systems, as it's development costs could be rolled together due to shared parts.
Now, when it comes to certain types of code, such as that used for hypervisor support for visualization and paravirtualization, yes, you need CPU specific software. But that does not require a recompilation of the whole OS. Zen, for example supports both Intel VT and AMD-V.

S-
Perhaps not the entire OS, but some sections/features. But more importantly, as it's an OS, those parts need to be on the final version released for manufacture to installation media, not an update. Rather obvious, but I'd think more than a few users would raise all kinds of .... if the OS was Intel only, and it was sent out on an AMD machine, and they use those specific features. :p

Application developers have it a little easier in a sense, as they can chose to update existing installs, or wait to include the changes for the next release. :)
 
If two chips runs the exact same instruction set, they are the same to the OS. But AMD and Intel cpus have slightly different instruction sets. Most are optimizations. For those instructions that does not exist in hardware it is usually emulated in software. I dont think Apple specifically test for AMD hardware. But I would not be surprised if they did just to leave the options open. I doubt Apple is using all or even a lot of Intel specific instructions as it really makes no difference. Apple has to support Core Duo processors anyway which lacks a lot of instructions common in newer Intel and AMD cpus.

Anyway there is nothing preventing Apple from switching to AMD. Apple has no real reason to however. But if Jobs woke up one day deciding to do it, it will not be hard at all. Maybe a patch or two. Leopard already runs well on AMD. Snow Leopard should not be much different.
 
If two chips runs the exact same instruction set, they are the same to the OS. But AMD and Intel cpus have slightly different instruction sets. Most are optimizations. For those instructions that does not exist in hardware it is usually emulated in software. I dont think Apple specifically test for AMD hardware. But I would not be surprised if they did just to leave the options open. I doubt Apple is using all or even a lot of Intel specific instructions as it really makes no difference. Apple has to support Core Duo processors anyway which lacks a lot of instructions common in newer Intel and AMD cpus.

Anyway there is nothing preventing Apple from switching to AMD. Apple has no real reason to however. But if Jobs woke up one day deciding to do it, it will not be hard at all. Maybe a patch or two. Leopard already runs well on AMD. Snow Leopard should not be much different.

Totally off-topic to now irrelevant Intel vs AMD discussion :confused: What's the latest status on the dude getting a new replacement machine? Looks like it hasn't happened nor will happen and end of discussion. Would have loved to see him get a new MP.
 
Totally off-topic to now irrelevant Intel vs AMD discussion :confused: What's the latest status on the dude getting a new replacement machine? Looks like it hasn't happened nor will happen and end of discussion. Would have loved to see him get a new MP.

:D still here !

the weekend has interrupted proceedings -
there have been developments -
it's in the balance , but i'm still hopeful :)

will hopefully be able to tell you more on Monday .
 

Attachments

  • Picture 2.png
    Picture 2.png
    60.1 KB · Views: 76
  • Picture 3.png
    Picture 3.png
    15 KB · Views: 56
Let's say in the case of SSE & SSE2. Yes, they're additions in instruction set, and not available on all Intel processors. A quick change in the /arch during compile will fix that. Cool. ;)

Haha... No, no it won't. That couldn't be further from the truth.

SSE and SSE2 are actual programming instructions that you write into your software. They're not a compiler switch. True, your compiler can sometimes turn your C code into SSE and SSE2. But if you write SSE2 code there is no magic switch.

It's like writing Altivec code and then having it not work on Intel. Again, no magic compiler switch.

If Apple was writing SSE4.1 code (which they aren't), there is no way that code could run on AMD processors. It would require a rewrite of the code that used the SSE4.1 instructions, not a recompile.
 
Totally off-topic to now irrelevant Intel vs AMD discussion :confused: What's the latest status on the dude getting a new replacement machine? Looks like it hasn't happened nor will happen and end of discussion. Would have loved to see him get a new MP.

People just took a detour while waiting for the OP's update :p;)
 
hey , sorry for the delay .
i'm pleased to say that i've had it confirmed that my replacement 2.93 Nehalem is on it;s way ...
:D

even though it's been a rough 3 months which started off with a real sense of disappointment at the realization that i'd been sold a dud , i've come out the other end feeling SO happy that Apple have lived up to evrything i've always hoped/believed them to be .
to me , they've justified the premium i've been paying on their products over the years .
i'm not just talking financially either .
their tech support and customer service personnel have been top notch since day one .
the best i've ever come across .
i must admit , in the past i've thought twice about paying out for applecare on other products i own ... never again .
maybe it's a nationality thing .. here in the UK it seems the level of customer service is (more often than not) appalling !
nonetheless - i was impressed .

all told , i believe Apple have done the right thing here and it could be argued that that isn't something to get all excited about , but , in this day and age , i think it's fair to give credit where it's due .

WELL DONE Apple :)

and thanks !
 
Really? And the AMD is OEM, too. Imagine what it is new.

You're comparing the wrong processors. The AMD 8xxx series needs to be compared to the Intel 7xxx series. You're looking at quad socket solutions, it'd be unfair to compare quad to dual socket cpus. ;)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.