I have heard that one of the current goals in scientific computing is to surpass the exascale level by 2018 or so... After having passed the petascale a few years ago, one would think that the exascale wouldn't be so much of a challenge... If it's theoretically possible, what challenges are there to computing at this speed?  Have we already reached the limitations of moore's law?
What are the current obstacles to reaching exascale computing?
hpc;parallel computing;exascale;architecture
We reached the petascale through an extreme effort in concurrency.  While the computational capability of modern processing cores has increased by roughly an order of magnitude in the last ten years (see Herb Sutter's excellent article The Free Lunch is Over), we are now capable of much more sophisticated shared-memory and distributed memory architectures, as evidenced by the success of GPUs for scientific computing and massively parallel systems such as the IBM Blue Gene.The largest challenge to exascale systems is fundamentally financial.  The K computer cost well over 1 billion dollars to develop. An exaflop machine would require similar investment.The second largest challenge is arguably power.  A system one hundred times the size of the 10 petaflop/s K machine would require 1 GW.I think another major challenge to the utility of an exascale machine is the need for algorithms and software that are not only extremely concurrent, but largely asynchronous as well, as the costs of synchronizing millions of processing cores will eventually overwhelm any benefits of a system so powerful.