Being relatively new to the high performance compute market, I thought I might take some time to share some of my observations with others who might also be trying to understand the market and what's going on in this area.
First we have to clear up the common misconception between high performance computing (HPC) and the broader cloud computing. HPC focuses on systems requiring multiple math engines (processors) working collectively to solve a mathematically intensive problem. While this then includes the traditional supercomputers like Blue Gene and HAL, it also systems targeted at many other areas that people may not realize such as financial analysis, modeling of chemica or biological interactions at an atomic level, oil and gas exploration, medical imaging and a myriad of other disciplines. Cloud computing, however, generally refers to servers running web browsing sessions and other applications that don't require high intensity mathematics. So just to be clear, cloud computing = cool web stuff, you tube, facebook, etc., while HPC is for the math gurus, but at least they get to say "why yes, I am a rocket scientist" with a straight face. And while there is an element of HPC in some cloud computing systems, it's not generally what the term cloud computing refers to.
The second observation is how pervasive parallel programming has become due to the advent of GPGPUs. I always knew there were people working on massively parallel software programs for use on the world's most powerful supercomputers but I always figured this was still limited to the scientific fringe looking for ET and such. Of course I didn't realize that the Playstations and other gaming platforms have already been using massively parallel processors (such as IBM's cell) and were at the forefront of bringing parallel programming techniques more into the mainstream. At TI we've also moved to multicore and are providing parallel programming tools such as OpenMP but as I alluded to in an earlier post, I still had the 'yeah, yeah, tools are nice but I can still program the old-fashioned way' attitude (see http://e2e.ti.com/blogs_/b/multicoremix/archive/2011/07/21/john-henry-computer-programmer.aspx). The more I learn about the market and see the direction things are going, the more I realize that linear programming is no more, certainly any new software graduate had better be learning how to use parallel tools if they're going to have a sustainable career.
The final observation I'll make in this blog is just how dominated this market has been by just two major players, Intel and Nvidia. Many others seem to have come and gone without gaining traction probably due to a variety of reasons including the huge investment that needs to be made in the silicon and the long lead times this market has from concept to production due to the complexity of the systems. It will be fun for us at TI to start being included in the conversation as a third major player, but more about that later.
See original post: http://e2e.ti.com/blogs_/b/multicoremix/archive/2011/09/19/observations-of-high-performance-computing.aspx