My hope, no… dream, is that we get both ARM and x86 compatible chips on the same motherboard one day. Off course the operating system needs to support dual architectures. Then they could run ARM binaries directly without any major compatibility or performance hit, without the need for recompilation.
A man can only hope. Is this something that could happen? Technically it should be possible, but realistically, probably not.
But then you end up with the downsides of having both and none of the upsides? Wouldn’t that incur an enormous effort on the software side to make it all possible, so you could run a less efficient chip in the end (practically two instead of one)
Having compatibility to legacy software is a pretty upside. Either you use an application that runs power efficient, maybe the entire operating system uses the power efficient ARM at default and then for compatibility or for faster calculation (games?) the x86 cores could be used. Intel already does two different kind of cores, performance and efficiency cores. And smartphones have something similar too. I imagine this would be expensive and it is not for everyone. And who knows what other cutbacks and drawbacks it would require.
Apple has managed the transition between architectures several times now. They build a distributable binary that can have several versions of the compiled code, one for each supported architecture. You have to compile everything twice, but it works.
This isn’t all that different from having a coprocessor. I don’t think it’s very useful to have an ARM or x86 coprocessor though because the major benefit to ARM is lower power consumption… Adding in a whole coprocessor is just going to increase power consumption.
Things like Rosetta are probably the better way.
Or maybe we see Java/the JVM make a comeback. This is the exact sort of world Java was built for. It just turned out that right around the time Java was taking off, everyone basically went for Windows and x86 chips… Which became the defacto standard.
Granted, at this point, folks would probably be going for more WASM (in browser or not) than JVM.
But Java and WASM doesn’t solve the compatibility issue on ARM. Games and other programs for x86 are still something people want to execute on ARM machines. That’s why compatibility layers and emulators are build for. And having a dedicated CPU would help with that. And if you do not use the x86 “extension”, then you won’t pay for power consumption. And if you aren’t interested into x86, then you simply don’t buy a dual architecture motherboard.
I’m not looking this from the perspective of laptops or handhelds BTW, but from the perspective of desktop PC. Overall I think its not practical to have them both on a single motherboard. But you know, the industry is full of non practical ideas. So it’s not unimaginable this could be reality someday. Maybe just for a small audience.
I’m not looking this from the perspective of laptops or handhelds BTW, but from the perspective of desktop PC.
I guess, I don’t see ARM taking off on the desktop anytime soon. Everything is still going to be released with x86 binaries for the foreseeable future.
And having a dedicated CPU would help with that. And if you do not use the x86 “extension”, then you won’t pay for power consumption. And if you aren’t interested into x86, then you simply don’t buy a dual architecture motherboard.
You’d still have power draw, just not as much. Maybe for desktop it could be worth it, but I’d say a good emulator/translator would be a better option for most people.
Rosetta from what I understand can do ahead of time translation which should get you pretty close to a usable piece of software for the vast vast vast majority of software. The exception would be things like games of course
It may not only be the same motherboard, but the same cpu package. AMD’s chiplet design has the possibility of mixing chiplets of different architectures.
My hope, no… dream, is that we get both ARM and x86 compatible chips on the same motherboard one day. Off course the operating system needs to support dual architectures. Then they could run ARM binaries directly without any major compatibility or performance hit, without the need for recompilation.
A man can only hope. Is this something that could happen? Technically it should be possible, but realistically, probably not.
But then you end up with the downsides of having both and none of the upsides? Wouldn’t that incur an enormous effort on the software side to make it all possible, so you could run a less efficient chip in the end (practically two instead of one)
Having compatibility to legacy software is a pretty upside. Either you use an application that runs power efficient, maybe the entire operating system uses the power efficient ARM at default and then for compatibility or for faster calculation (games?) the x86 cores could be used. Intel already does two different kind of cores, performance and efficiency cores. And smartphones have something similar too. I imagine this would be expensive and it is not for everyone. And who knows what other cutbacks and drawbacks it would require.
Apple has managed the transition between architectures several times now. They build a distributable binary that can have several versions of the compiled code, one for each supported architecture. You have to compile everything twice, but it works.
I think thats a pretty unmotivated approach. Imagine every invention replacing previous ones, just getting piled on top of each others?
deleted by creator
Welcome to the legacy of IBM PCs.
This isn’t all that different from having a coprocessor. I don’t think it’s very useful to have an ARM or x86 coprocessor though because the major benefit to ARM is lower power consumption… Adding in a whole coprocessor is just going to increase power consumption.
Things like Rosetta are probably the better way.
Or maybe we see Java/the JVM make a comeback. This is the exact sort of world Java was built for. It just turned out that right around the time Java was taking off, everyone basically went for Windows and x86 chips… Which became the defacto standard.
Granted, at this point, folks would probably be going for more WASM (in browser or not) than JVM.
But Java and WASM doesn’t solve the compatibility issue on ARM. Games and other programs for x86 are still something people want to execute on ARM machines. That’s why compatibility layers and emulators are build for. And having a dedicated CPU would help with that. And if you do not use the x86 “extension”, then you won’t pay for power consumption. And if you aren’t interested into x86, then you simply don’t buy a dual architecture motherboard.
I’m not looking this from the perspective of laptops or handhelds BTW, but from the perspective of desktop PC. Overall I think its not practical to have them both on a single motherboard. But you know, the industry is full of non practical ideas. So it’s not unimaginable this could be reality someday. Maybe just for a small audience.
I guess, I don’t see ARM taking off on the desktop anytime soon. Everything is still going to be released with x86 binaries for the foreseeable future.
You’d still have power draw, just not as much. Maybe for desktop it could be worth it, but I’d say a good emulator/translator would be a better option for most people.
Rosetta from what I understand can do ahead of time translation which should get you pretty close to a usable piece of software for the vast vast vast majority of software. The exception would be things like games of course
It may not only be the same motherboard, but the same cpu package. AMD’s chiplet design has the possibility of mixing chiplets of different architectures.