Skip to main content

Avoiding Algorithmic Obfuscation in a Message-Driven Parallel MD Code

  • Conference paper

Part of the book series: Lecture Notes in Computational Science and Engineering ((LNCSE,volume 4))

Abstract

Parallel molecular dynamics programs employing shared memory or replicated data architectures encounter problems scaling to large numbers of processors. Spatial decomposition schemes offer better performance in theory, but often suffer from complexity of implementation and difficulty in load balancing. In the program NAMD 2, we have addressed these issues with a hybrid decomposition scheme in which atoms are distributed among processors in regularly sized patches while the work involved in computing interactions between patches is decomposed into independently assignable compute objects. When needed, patches are represented on remote processors by proxies. The execution of compute objects takes place in a prioritized message-driven manner, allowing maximum overlap of work and communication without significant programmer effort. In order to avoid obfuscation of the simulation algorithm by the parallel framework, the algorithm associated with a patch is encapsulated by a single function executing in a separate thread. Output and calculations requiring globally reduced quantities are similarly isolated in a single thread executing on the master node. This combination of features allows us to make efficient use of large parallel machines and clusters of multiprocessor workstations while presenting minimal barriers to method development and implementation.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Amdahl, G. M.: Validity of the single processor approach to achieve large scale computing capabilities. In Proc. AFIPS spring computer conf. vol. 30. AFIPS Press, Reston, Virginia, 1967.

    Google Scholar 

  2. Allen, M. P., Tildesley, D. J.: Computer Simulation of Liquids. Oxford University Press, New York, 1987.

    MATH  Google Scholar 

  3. Brooks III, C. L., Karplus, M., Pettitt, B. M.: Proteins: A Theoretical Perspective of Dynamics, Structure and Thermodynamics. Advances in Chemical Physics, vol. LXXI. John Wiley & Sons, New York, 1988.

    Google Scholar 

  4. McCammon, J. A., Harvey, S. C: Dynamics of Proteins and Nucleic Acids. Cambridge University Press, Cambridge, 1987.

    Book  Google Scholar 

  5. Almasi, G. S., Gottlieb, A.: Highly Parallel Computing. 2nd edn. Benjamin/Cummings, Redwood City, California, 1994.

    MATH  Google Scholar 

  6. Theoretical Biophysics Group, http://www.ks.uiuc.edu/.

  7. Nelson, M., Humphrey, W., Gursoy, A., Dalke, A., Kalé, L., Skeel, R. D., Schulten, K.: NAMD — A parallel, object-oriented molecular dynamics program. J. Supercomputing App. 10 (1996) 251–268.

    Article  Google Scholar 

  8. Lin, M., Hsieh, J., Du, D. H. C., Thomas, J. P., MacDonald, J. A.: Distributed network computing over local ATM networks. In Proceedings of Supercomputing ‘94. IEEE Computer Society Press, Los Alamitos, California, 1994.

    Google Scholar 

  9. Greengard, L., Rokhlin, V.: A fast algorithm for particle simulation. J. Comp. Phys. 73 (1987) 325–348.

    Article  MathSciNet  MATH  Google Scholar 

  10. Rankin, W., Board, J.: A portable distributed implementation of the parallel multipole tree algorithm. IEEE Symposium on High Performance Distributed Computing. Duke University Technical Report 95–002.

    Google Scholar 

  11. Geist, A., Beguelin, A., Dongarra, J., Jiang, W., Manchek, R., Sunderam, V.: PVM: Parallel Virtual Machine: A Users’ Guide and Tutorial for Networked Parallel Computing. MIT Press, Cambridge, Massachusetts, 1994.

    MATH  Google Scholar 

  12. Snir, M., Otto, S., Huss-Lederman, S., Walker, D., Dongarra, J.: MPI: The Complete Reference. MIT Press, Cambridge, Massachusetts, 1995.

    Google Scholar 

  13. Humphrey, W. F., Dalke, A., Schulten, K.: VMD — Visual molecular dynamics. J. Mol. Graphics. 14 (1996) 33–38.

    Article  Google Scholar 

  14. Haney, S. W.: Is C++ fast enough for scientific computing? Computers in Physics. 8 (1994) 690–694.

    Google Scholar 

  15. Clark, T., Hanxleden, R., McCammon, J., Scott, L.: Parallelizing molecular dynamics using spatial decomposition. In Proceedings of the scalable high performance computing conference, May 23–25, 1994, Knoxville, Tennessee. IEEE Computer Society Press, Los Alamitos, California, 1994.

    Google Scholar 

  16. Plimpton, S., Hendrickson, B.: A New Parallel Method for Molecular Dynamics Simulation of Macromolecular Systems. 1994. Technical Report SAND94-1862. Sandia National Laboratories.

    Google Scholar 

  17. Hockney, R. W., Eastwood, J. W.: Computer Simulation Using Particles. McGraw-Hill, New York, 1981.

    Google Scholar 

  18. Kalé, L. V.: The Chare Kernel parallel programming language and system. In Proceedings of the international conference on parallel processing vol. II. CRC Press, Boca Raton, Florida, 1990.

    Google Scholar 

  19. Kalé, L., Krishnan, S.: Charm++: A Portable Concurrent Object Oriented System Based on C++. In Proceedings of the Conference on Object Oriented Programming Systems, Languages and Applications. A. Paepcke, editor. ACM Press, New York, N.Y., 1993.

    Google Scholar 

  20. Kalé, L. V., Bhandarkar, M., Jagathesan, N., Krishnan, S., Yelon, J.: Converse: An interoperable framework for parallel programming. In Proceedings of the 10th international parallel processing symposium. IEEE Computer Society Press, Los Alamitos, California, 1996.

    Google Scholar 

  21. Kalé, L. V., Bhandarkar, M., Brunner, R., Krawetz, N., Phillips, J., Shinozaki, A.: NAMD: A case study in multilingual parallel programming. In Proceedings of the 10th international workshop on languages and compilers for parallel computing. Springer-Verlag, Berlin, 1998.

    Google Scholar 

  22. Kalé, L. V., Bhandarkar, M.: Structured Dagger: A coordination language for message-driven programming. In Proceedings of the second international europar conference. Lecture Notes in Computer Science, vol. 1123-1124. SpringerVerlag, Berlin, 1996.

    Google Scholar 

  23. Ousterhout, J.: Tcl and the Tk Toolkit. Addison-Wesley, Reading, Massachusetts, 1994.

    MATH  Google Scholar 

  24. Watters, A., Rossum, G. V., Ahlstrom, J. C: Internet Programming With Python. M & T Books, Sebastopol, California, 1996.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Phillips, J.C. et al. (1999). Avoiding Algorithmic Obfuscation in a Message-Driven Parallel MD Code. In: Deuflhard, P., Hermans, J., Leimkuhler, B., Mark, A.E., Reich, S., Skeel, R.D. (eds) Computational Molecular Dynamics: Challenges, Methods, Ideas. Lecture Notes in Computational Science and Engineering, vol 4. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-58360-5_28

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-58360-5_28

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63242-9

  • Online ISBN: 978-3-642-58360-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics