A description is given of the typical life cycle of scientific computing codes. Particular relevance is placed on the number of users, their concerns, the machines on which the codes operate as they mature, as well as the relative importance of parallel computing. It is seen that parallel computing achieves the highest importance in the early phases of code development, acting as an enabling technology without which new scientific codes could not develop. Given the typical times new applications tend to run at their inception, Moore's law itself is perhaps the biggest incentive for new scientific computing codes. Without it, computing time would not decrease in the future, and the range of applications would soon be exhausted.
展开▼