The transition to many-core processing is going be accompanied by a step up in abstraction. As CPU and GPU become the new chip building blocks AMD is trying to take the higher ground with is Fusion System Architecture.
LONDON – At this week's Fusion Developers' Summit AMD Fellow Phil Rogers said that in the future the Fusion System Architecture (FSA) will be agnostic to the types CPU and GPU cores used for its implementation (see AMD makes Fusion CPU, GPU agnostic). Rogers also said that FSA will be open, and that AMD wants other hardware companies to implement the specification.
But Rogers was not specific about what that would mean for AMD processors going forward. And the most obvious thing he did NOT say is whether AMD would include ARM cores inside Fusion chips although that would appear to be an option. Maybe it is a dim and distant possibility or maybe AMD is keeping its powder dry for a forthcoming announcement.
However, one thing that is clear is that AMD has been drinking the same 'ecosystem' Kool-aid that ARM likes to get high on. AMD clearly believes it can head upstream in abstraction with Fusion and define a generic heterogeneous multi-core architecture that it will then make available to all-comers.
There is sense to AMD's bold plan. Being an un-supported builder of Intel-compatible
chips becomes much harder as those chips become many-core, so the company has to do something. AMD also, rather like Intel, needs to break out of the PC ghetto in which it has become confined. And a broader set of applications requires a broader set of processing engines, which AMD will not design from the ground up but license in. This attempt to take the multiprocessing high ground goes hand in hand with providing support for OpenCL and other parallel programming support features.
AMD's plan makes sense in another way. As we go from multi-core to many-core the CPU and GPU processing elements will become the things we design with, akin to the ASIC cells of old. These in turn had replaced logic gates as the building blocks of choice which in turn had replaced pre-characterized transistors as the standardized elements available for use.
The lesson from Moore's Law and history is that CPU and GPU cores will become some of a few standard building blocks within the IC and value will be created in the way they are put together and the efficiency with which they co-operate. As these are programmable building blocks that means software is key. One could argue that the standardization of the blocks has already happened in the CPU domain, which has gone from the tens of architectures of the 1990s to just a couple, the x86 and ARM architectures. Now AMD is working on the standardization of the software approach and the abstraction of multi-core hardware.
That was really open source. Unfortunately it was not useful as a piece of IP for existing X86 based systems.
This is different, being actual silicon and cards that can be used, but the drawback is the deep obfuscation layer that AMD marketing thinks is still somehow "open".
AMD GPU technology is not "OPEN" at all, this is a marketing ploy. The support software is closed and proprietary; the architecture is closed and proprietary. If it was even as open as any processor you would have the equivalent of machine level or assembler available and people would be able to write tools for it.
Instead of having the marketers "ease the path of programming" for those poor dumb users, they could give out the information and let the users solve the problem for them. They could try to be more "open" than Nvidia rather than going the other way.
Technology mapping to GPU cores is best done by the people who understand the problem space. Nvidia is working with those people and making good progress; AMD is coming from behind and they need to open up a lot more to potential users to get them interested.
It sounds plausible but what makes you think that?
And do you think that eventually GPUs will look so much like CPUs that we end up with a single logic-plus-graphics processing unit (L+GPU) to simplify many-core processing?
Similar perhaps although I didn't see Sun making any transition from one level of abstraction to another.
Sun was a workstation provider that designed processors in order to create a performance advantage. In the end Sun couldn't produce an advantage over Intel and AMD x86 processors and high-end PCs replaced workstations.
In this case AMD and all other processor developers are facing the same difficult transition from multi-core to many-core. AMD seems to be trying to invoke first mover and ecosystem advantage to try and set the agenda. If it doesn't, Intel or ARM will set the agenda anyway.
The big question is does AMD have ARM, Microsoft or anyone else on-board, or are those guys indulging in fence-sitting; getting close to see if AMD's "standard" approach might have legs without committing just yet.
ARM may wish it had thought of this first and be reluctant to join an ecosystem in which it is just another logo on a slide. On the other hand if AMD's approach gains traction better to be in early and hard.