By: Exophase (exophase.delete@this.gmail.com), August 4, 2014 3:20 pm
Room: Moderated Discussions
Doug S (foo.delete@this.bar.bar) on August 4, 2014 8:01 am wrote:
> How hard would it be for Apple to include a ARM and a x86 CPU in the same product, and have
> them capable of running at the same time? The x86 would operate alone if you booted Windows
> directly, but when booted into OS X the OS would run on ARM but Windows VMs or other x86 apps
> would run on the x86 CPU. Is this feasible? Being able to run processes on two different CPUs
> at the same time won't be easy, but perhaps the fact OS X uses the Mach microkernel would make
> this slightly easier than it would be for Linux or Windows to attempt such a thing.
>
> The cost difference adding the ARM CPU could be made up by using a slightly less expensive x86 CPU, since
> it wouldn't have the overhead of running OS X and could devote 100% of its resources to running x86 apps.
x86 CPUs have a dedicated memory controller, if you want to run another processor at the same time it's going to need its own memory. At a minimum. You'd run into other serious problems when trying to run them as different clusters of cores under the same OS, like a lack of coherency between the two, and not having a unified interface to the same peripherals.
If Apple could license an Intel CPU to drop on its own SoC it'd be a different story, but I don't think that's what we're talking about here...
> How hard would it be for Apple to include a ARM and a x86 CPU in the same product, and have
> them capable of running at the same time? The x86 would operate alone if you booted Windows
> directly, but when booted into OS X the OS would run on ARM but Windows VMs or other x86 apps
> would run on the x86 CPU. Is this feasible? Being able to run processes on two different CPUs
> at the same time won't be easy, but perhaps the fact OS X uses the Mach microkernel would make
> this slightly easier than it would be for Linux or Windows to attempt such a thing.
>
> The cost difference adding the ARM CPU could be made up by using a slightly less expensive x86 CPU, since
> it wouldn't have the overhead of running OS X and could devote 100% of its resources to running x86 apps.
x86 CPUs have a dedicated memory controller, if you want to run another processor at the same time it's going to need its own memory. At a minimum. You'd run into other serious problems when trying to run them as different clusters of cores under the same OS, like a lack of coherency between the two, and not having a unified interface to the same peripherals.
If Apple could license an Intel CPU to drop on its own SoC it'd be a different story, but I don't think that's what we're talking about here...