I'll break the ice and say that, imo, the general CPU has finally reached a point in history where it will have to permanently relinguish certain dedicated tasks to specialized processing units forever. We are already seeing the precursor indications of this in that proposing a bigger, more powerful, higher clock general CPU is only yielding more unweildy, inefficient designs. So the only direction is to go laterally with clustered general processors. Its duties will gravitate more to general housekeeping and looping the general framework of a software, rather than doing the hardcore number crunching work. The very intensive computation work will be done on specialize processors or stripped-down for speed co-processor clusters. True, the number crunching tasks have historically moved back'n'forth between general CPU and dedicated silicon many times, but I predict this will be the last time. As soon as the software and OS limitations of seamlessly managing an agressively scaling architecture have been overcome (which we are seeing the precursors to now), there simply won't be the impetus to develop a bigger, more powerful single CPU to handle the whole shebang. Architectural scaleability will be far less costly to develop and support, rather than invent a new, larger mega-CPU.