Skip to main content

Thank you for visiting nature.com. You are using a browser version with limited support for CSS. To obtain the best experience, we recommend you use a more up to date browser (or turn off compatibility mode in Internet Explorer). In the meantime, to ensure continued support, we are displaying the site without styles and JavaScript.

  • Commentary
  • Published:

Programming revisited

Writing efficient scientific software that makes best use of the increasing complexity of computer architectures requires bringing together modelling, applied mathematics and computer engineering. Physics may help unite these approaches.

This is a preview of subscription content, access via your institution

Access options

Buy this article

Prices may be subject to local taxes which are calculated during checkout

Figure 1: Traditional computational science workflow.
Figure 2: A new programming workflow.

References

  1. Lynch, P. The Emergence of Numerical Weather Prediction: Richardson's Dream (Cambridge Univ. Press, 2006).

    MATH  Google Scholar 

  2. Evans, D. J., Cohen, E. G. D. & Morriss, G. P. Phys. Rev. Lett. 71, 2401–2404 (1993).

    Article  ADS  Google Scholar 

  3. Hey, T., Tansley, S. & Tolle, K. (eds) The Fourth Paradigm: Data-Intensive Scientific Discovery (Microsoft Research, 2009).

    Google Scholar 

  4. Message Passing Interface Forum. MPI: A Message-Passing Interface standard. Int. J. Supercomput. Appl. High Perfor. Comput. 8, 165–416 (1994).

  5. Valiev, M. et al., Comput. Phys. Commun. 181, 1477–1489 (2010).

    Article  ADS  Google Scholar 

  6. Nieplocha, J. & Harrison, R. J. Supercomput. 11, 119–136 (1997).

    Article  Google Scholar 

  7. Pérez, F. & Granger, B. E. Comput. Sci. Eng. 9, 21–29 (2007).

    Article  Google Scholar 

  8. Anderson, E. et al. LAPACK Users' Guide (Software, Environments and Tools) (SIAM, 1987).

    Google Scholar 

  9. Kutzbach, J. E. & Ruddiman, W. F. Sci. Am. 264, 66–75 (1991).

    Google Scholar 

Download references

Acknowledgements

The author thanks Thomas Lippert for insightful discussion on the respective roles of simulations and data analysis, as well as Peter Messmer, Oliver Fuhrer and Torsten Hoefler for important comments on parts of the manuscript. Generous support from the NCCR-MARVEL project of the Swiss National Fund and Oak Ridge National Laboratory is acknowledged.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Thomas C. Schulthess.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Schulthess, T. Programming revisited. Nature Phys 11, 369–373 (2015). https://doi.org/10.1038/nphys3294

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1038/nphys3294

This article is cited by

Search

Quick links

Nature Briefing

Sign up for the Nature Briefing newsletter — what matters in science, free to your inbox daily.

Get the most important science stories of the day, free in your inbox. Sign up for Nature Briefing