Response to Bill McColl's parallelism post

Print Friendly, PDF & Email

At the beginning of April I pointed to a post by Bill McColl where he pointed out the increasing importance of parallel programming accross the board.

Bill has a new post which notes the response, and parallel comments made by Microsoft’s Craig Mundie.

Bill also offers a prediction on coming language development

On his comment about “new languages pushed by a killer app”, my prediction is that in the short to medium term the biggest impact will come from domain specific parallel languages that are incredibly easy to use and allow users with strong experience in an application domain, but much less experience of the intricacies of general purpose parallel programming, to rapidly develop massively parallel apps that can be automatically mapped onto thousands of cores, with automatic fault tolerance, scheduling, and load balancing. Think more along the lines of MapReduce than MPI. On killer apps for massively parallel processing, my prediction is that a number of major new killer apps will emerge naturally as we gradually build out a whole new generation of software architectures in three broad areas: The Live Web, The Structured Web, and Live Enterprise Software.

This is an intuitively attractive prediction to my mind, since it doesn’t involve a top down overhaul of the enormous installed based of software OR a one-size-fits-all solution. It also allows for higher level, domain-specific approaches that build on expressive environments like Matlab. On the other hand, it seems to take a lot for a new language to come into use.

What do you think? Are we locked in to Fortran and C or is there room in HPC for new languages?

Trackbacks

  1. […] universality that languages such as C, C++ and Java have achieved in sequential computing. My own view, based on more than 20 years of research in this area, is that this is very unlikely, certainly in […]

  2. […] universality that languages such as C, C++ and Java have achieved in sequential computing. My own view, based on more than 20 years of research in this area, is that this is very unlikely, certainly in […]

Comments

  1. The growing consensus is that control-flow languages are on the way out and explicit dataflow graph programming (aka “stream programming”) is the new vogue.

    I expect the spreadsheet will continue to be the most popular language and killer application in the parallel computing age. Spreadsheets are particularly good at expressing parallel dataflow graphs and large SIMD operations and you already know how to use them.

  2. “The growing consensus is that control-flow languages are on the way out and X is the new vogue”

    Look back through recent history, and you could find statements that put 4GLs, fuzzy logic, AI, and many other technologies in for X. Not saying Stream couldn’t be a big deal, but I’m not sure I’d call it a consensus just yet.