SA said:In the long run it will be about providing the highest general purpose programmable floating point performance coupled with some specific rendering and display hardware.
CPU manufacturers have not targeted this market so will not likely be the vendors that solve the challanges it presents. General purpose, programmable, very high performance floating point will likely move to the GPU, since those companies are targeting the markets that require it.
To meet these needs in the long run, GPU manufacturers will likely adopt some the of techniques employed by CPU manufacturers, with the use of more dynamic logic, higher frequencies, on chip caches, general purpose registers, etc. The GPU is therefore likely to consist of several cores: a rendering core handing the raw rendering and display, the specialized graphics core, handling 3d graphics specific tasks optimized in hardware such as hidden surface removal, anti-aliasing, etc. and a general purpose set of high frequency floating point processors with a very large number of concurrent ALUs and their own on-chip cache. All this with a memory bandwidth architecture to match.
This is all pure speculation, but it seems to be the way things are heading.
Apologies for the long quote, but this echoes my own thoughts closely.
What I go on to wonder then is - where is the PC in this? Why would you tether the above hardware to a CPU running an office OS from its own (slow) memory, and communicating via a slow general interconnect with the simulation/visualization subsystem? Wouldn't it be better to simply build a specific box for the purpose and see to that it can connect to PC periherals and displays?
I just can't see that this is a direction the PC in general needs to evolve in, or even wants to. And I can't see that such a compute engine would be anything but hobbled by being dependent on a PC host, particularly if the evolutionary split widens as you seem to suggest, and the simulation part grows more capable of independent processing. Why not just make it completely independent? For games this would surely be the optimal.
* For some time, it has seemed inevitable to me that office PCs and media PCs increasingly diverge in their needs, and really should split into separate evolutionary branches. Is tacking on a co-processor card to an office PC really the model that we should follow in the future?
* Intel has both the CPU experience, the IP, and the fabs to build whatever silicon is needed. If it seemed as if the floating point coprocessor powerhouses SA describes above would become a major part of overall personal computing revenue, would they leave that revenue to be enjoyed its competitors uncontested? Wouldn't Intel at such a point introduce a new system architecture optimized for more media-centric computing? (Of course, they would only want to do this, and split the market if the media part got big enough. As of now they seem not to feel that its worth it. Oh, and I would tend to disagree about general purpose programmable floating point being the domain of gfx companies exclusively. The first Cell processor was largely designed by IBM. Supercomputing on one end, and DSPs on the other - there is a lot of high performance programmable floating point know how floating around, and referring to the GPU manufacturers feels very PC-centric.)
* Ultimately, Microsoft decides how the PC will evolve. What is their vision of computing for the future? Whereas Intel publicly extrapolates far into the future, Microsoft has been very silent as to where they would like to see the PC evolve.