>And the baroque instruction encoding on the x86 is actually a _good_
>thing: it's a rather dense encoding, which means that you win on icache.
>It's a bit hard to decode, but who cares? Existing chips do well at
>decoding, and thanks to the icache win they tend to perform better - and
>they load faster too (which is important - you can make your CPU have
>big caches, but _nothing_ saves you from the cold-cache costs).
>The low register count isn't an issue when you code in any high-level
>language, and it has actually forced x86 implementors to do a hell of a
>lot better job than the competition when it comes to memory loads and
>stores - which helps in general. While the RISC people were off trying
>to optimize their compilers to generate loops that used all 32 registers
>efficiently, the x86 implementors instead made the chip run fast on
>varied loads and used tons of register renaming hardware (and looking at
>_memory_ renaming too).
And that's true. ARM folks found out that while ARM is nice and great for low-performance low-power computing, you really need to do all sorts of tricks x86 does once you want to move to high-performance computing. Large register file does not give you much in that case.
Posted Sep 10, 2012 5:44 UTC (Mon) by dlang (✭ supporter ✭, #313)
[Link]
on the other hand, the x86 design is hard to scale up in speed and efficiently use more transisters. Other designs do scale up better.
mobile computers replacing desktop
Posted Sep 10, 2012 6:33 UTC (Mon) by khim (subscriber, #9252)
[Link]
Not really. There are designs which can cover lower-power/lower-speed niche (ARM and MIPS), there are designs which cover higher-power/higher-speed niche (Itanic, POWER), there are no designs which scale better than x86.
That's why most TOP500 computers use it: they need something with the best available performance per watt (wall-power is one of the most important limitations for the supercomputers) and that "something" is either GPU or x86. Often both.
mobile computers replacing desktop
Posted Sep 10, 2012 6:56 UTC (Mon) by Cyberax (✭ supporter ✭, #52523)
[Link]
Technically, the latest ARMs have a better peformance/power ratio than x86/64. But they still can't approach the single-core speed of x86.
mobile computers replacing desktop
Posted Sep 10, 2012 7:07 UTC (Mon) by dlang (✭ supporter ✭, #313)
[Link]
> Technically, the latest ARMs have a better peformance/power ratio than x86/64. But they still can't approach the single-core speed of x86.
which doesn't approach the single-core speed of the Power systems.
each of them has a market, they don't have to directly compete.
Unless you are shipping binary-only software and aren't willing to ship multiple copies. the industry has been in that mindset for a long time.
But in the mobile space they don't have the luxury of having a single binary target, and until and unless they do (which seems unlikely to happen in the short term), we have a real chance for competition between different processors, and for different processors to be used in different places. In the short term it's easier to try and mandate a hardware monoculture, but I don't think anyone has enough power to do so, especially with Android and Linux _not_ mandating it and giving everyone an example and an option to work with when they run into the monoculture limitations.
mobile computers replacing desktop
Posted Sep 10, 2012 11:55 UTC (Mon) by Cyberax (✭ supporter ✭, #52523)
[Link]
> which doesn't approach the single-core speed of the Power systems.
It does. Easily.
New Xeons beat all the PPCs except for the top-of-the line POWER-7 CPUs. And then top-of-the line PPCs beat Xeons only because of their humongous die size and clock speeds (with corresponding TDP).
In reality there's no magic sauce that makes PPC to be inherently better than x86. They both use hardware decoders to split instructions into pipeline-able sub-instructions. Sure, decoders for RISCs are easier to implement but the difference in the number of transistors is trivial for desktop/server CPUs.
I'd several run-ins with IBM mainframe guys about a year ago. They told my client how great and fast their mainframes were, that $100000 per system couldn't be wrong, could it? So my client went and leased a 'small' unit - telling how great it would be.
IO turned out to be slow as hell compared to our simple Xeon-based server with a RAID of Intel SSDs. CPU performance indeed was higher, but not by much - and we got one of the fastest CPUs available.
mobile computers replacing desktop
Posted Sep 10, 2012 13:16 UTC (Mon) by khim (subscriber, #9252)
[Link]
But in the mobile space they don't have the luxury of having a single binary target, and until and unless they do (which seems unlikely to happen in the short term), we have a real chance for competition between different processors, and for different processors to be used in different places.
Define "short term". We had similar situation on PC, too. Early versions of many programs supported many different CPUs (I've personally used Turbo Pascal on x86-based systems and on z80-based systems). But eventually market settled on "IBM PC compatible" and most other systems died of. Mac survived (barely), but all other IBM PC-incompatible personal computers perished. x86-incompatible systems perished without exceptions. This is why Intel and MIPS are so desperate to push their CPUs in mobile space: they know that if they'll not do that in a year or two they'll lose the opportunity forever. Already the biggest complaint WRT x86-phones Androids and MIPS-based Androids is poor ARM emulation and poor work of many popular programs with binary-only components.
In the short term it's easier to try and mandate a hardware monoculture, but I don't think anyone has enough power to do so, especially with Android and Linux _not_ mandating it and giving everyone an example and an option to work with when they run into the monoculture limitations.
Bwa-ha-ha. Just want and see. Windows NT also supported multitude of CPUs (), but in the end… market have chosen just one architecture: x86. Short-term? Nope, this is not the question of short-term. I'm not sure who'll win the mobile race (there are still some time left and MIPS and x86 both have advantages: MIPS is free and x86 makes it easy to port software from PC), but in the end it'll be one choice.