Attendees at the AMD Fusion Developer Summit here in Bellevue, Washington were treated to an unexpected keynote speaker today: Jem Davies, Fellow and Technology VP at ARM. Davies wasn't there to announce a grand rapprochement between AMD and ARM. He did, however, provide some interesting commentary on the two companies' rather similar vision for the future.
Davies' main point seemed to be that, while Moore's Law isn't dead yet, its relevance is shrinking. Linear increases in CPU performance are a thing of the past, and heterogeneous computing is the only sensible way forward.
This point of view shouldn't come as a shock to anyone, of course. CPU and GPU cores have been sharing die area in ARM-based system-on-a-chip devices for some time, and the same goes for the latest wave of processors from AMD and Intel. Davies' illustration of the underlying causes and their future implications was interesting, though. These two slides from his presentation sum up the problem:
Increases in clock speeds may turn out to be considerably less than expected as chipmakers move to 28 nm, 20 nm, and finer process nodes. As the second slide shows, finer processes will definitely allow more transistors per square millimeter. However, the amount of power used by each transistor won't drop dramatically. Davies said these constraints will mean some parts of the silicon will have to remain "dark" so that current power envelopes aren't outgrown by future chips (which will have higher transistor counts, similar-sized dies, yet similar or not much lower power consumption per transistor).
He added that heterogeneous computing will be the only effective way to make efficient use of such chips. Instead of a faster monolithic design, developers will face chips with different types of processors tailored for different workloads. Processing workloads will need to be moved to the particular area of the chip capable of executing that workload the most efficiently. (Before you start getting any ideas, no, Davies made it clear that he does not expect CPUs and GPUs to merge in the future. They may simply remain perpetual roommates.)
The way forward is clear, then, at least from the standpoint of companies like ARM and AMD. Things will get trickier for developers, though, which presents a real challenge. Davies didn't lay out a clear solution; he admitted that abstracting the extra complexity of heterogeneous processors would be a must if developers are to take advantage of them, but he cautioned against wantonly modifying standards or creating new ones. In the ensuing question-and-answer session, though, Davies said of OpenCL, "I'm completely convinced."