AMD has given some out information about their upcoming GPU architecture. In short, they are completely abandoning their VLIW architecture, because of the inherent inefficiencies with trying to parallelize code. Instead they’re going for a more straightforward SIMD-like approach, much like nVidia’s Fermi architecture, but also much like Intel’s Larrabee.
It has always been obvious that nVidia’s approach was better for GPGPU than AMD’s. AMD’s approach was better for graphics (enough parallelism can be extracted from most graphics tasks to make VLIW efficient, and pack more processing power in the same die space). However, nVidia proved that their approach could be made ‘good enough’ for graphics, while having advantages for GPGPU. In a way, Fermi seems to be the right architecture at the right time. Sure, they had a bit of a false start with the original GTX465/470/480, but that was more to do with manufacturing than with the architecture itself, as the more refined GTX460 and the GTX500 series show. They are competitive in terms of price/performance on the graphics front, while offering the extra GPGPU benefits that AMD currently lacks.
Other new GPGPU features include support for function pointers, virtual functions, exceptions and recursion, to allow for a full C++ implementation. Again, these are feature that Fermi already supports. AMD also goes for ECC memory support, which again, nVidia’s Fermi already supports.
It will be interesting to see AMD’s upcoming architecture. In a way they have to start completely from scratch. Not only are they completely redesigning their GPU for the first time in years, they also need to write completely new compilers to optimize for this different approach. nVidia has a head start here. That could give them the advantage, but on the other hand, it might not say much. Take for example AMD’s Athlon64 architecture: there was no doubt that the integrated memory controller had its advantages in theory. Intel moved to an integrated memory controller much later (just like a single-die quadcore). However, once Intel made that move, they immediately took quite a lead over AMD.