Skip to main content

Adaptive Application Composition in Quantum Chemistry

  • Conference paper
Architectures for Adaptive Software Systems (QoSA 2009)

Abstract

Component interfaces, as advanced by the Common Component Architecture (CCA), enable easy access to complex software packages for high-performance scientific computing. A recent focus has been incorporating support for computational quality of service (CQoS), or the automatic composition, substitution, and dynamic reconfiguration of component applications. Several leading quantum chemistry packages have achieved interoperability by adopting CCA components. Running these computations on diverse computing platforms requires selection among many algorithmic and hardware configuration parameters; typical educated guesses or trial and error can result in unexpectedly low performance. Motivated by the need for faster runtimes and increased productivity for chemists, we present a flexible CQoS approach for quantum chemistry that uses a generic CQoS database component to create a training database with timing results and metadata for a range of calculations. The database then interacts with a chemistry CQoS component and other infrastructure to facilitate adaptive application composition for new calculations.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Armstrong, R. et al.: Common Component Architecture (CCA) Forum, http://www.cca-forum.org/

  2. Allan, B.A., Armstrong, R., Bernholdt, D.E., Bertrand, F., Chiu, K., Dahlgren, T.L., Damevski, K., Elwasif, W.R., Epperly, T.G.W., Govindaraju, M., Katz, D.S., Kohl, J.A., Krishnan, M., Kumfert, G., Larson, J.W., Lefantzi, S., Lewis, M.J., Malony, A.D., McInnes, L.C., Nieplocha, J., Norris, B., Parker, S.G., Ray, J., Shende, S., Windus, T.L., Zhou, S.: A component architecture for high-performance scientific computing. Intl. J. High-Perf. Computing Appl. 20(2), 163–202 (2006)

    Article  Google Scholar 

  3. McInnes, L.C., Ray, J., Armstrong, R., Dahlgren, T.L., Malony, A., Norris, B., Shende, S., Kenny, J.P., Steensland, J.: Computational quality of service for scientific CCA applications: Composition, substitution, and reconfiguration. Technical Report ANL/MCS-P1326-0206, Argonne National Laboratory (Feburary 2006)

    Google Scholar 

  4. Norris, B., Ray, J., Armstrong, R., McInnes, L.C., Bernholdt, D.E., Elwasif, W.R., Malony, A.D., Shende, S.: Computational quality of service for scientific components. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 264–271. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  5. Gordon, M.(PI): Chemistry Framework using the CCA, http://www.scidac.gov/matchem/better.html

  6. Schmidt, M.W., Baldridge, K.K., Boatz, J.A., Elbert, S.T., Gordon, M.S., Jensen, J.H., Koseki, S., Matsunaga, N., Nguyen, K.A., Su, S.J., Windus, T.L., Dupuis, M., Montgomerya, J.A.: General atomic and molecular electronic structure system. J. Computational Chemistry 14, 1347–1363 (1993)

    Article  Google Scholar 

  7. Janssen, C.L., Nielsen, I.M.B., Colvin, M.E.: Encyclopedia of computational chemistry. In: Schleyer, P.V.R., Allinger, N.L., Clark, T., Gasteiger, J., Kollman, P.A., Schaefer III, H.F., Scheiner, P.R. (eds.) Encyclopedia of Computational Chemistry. John Wiley & Sons, Chichester (1998)

    Google Scholar 

  8. Kendall, R.A., Apra, E., Bernholdt, D.E., Bylaska, E.J., Dupuis, M., Fann, G.I., Harrison, R.J., Ju, J.L., Nichols, J.A., Nieplocha, J., Straatsma, T.P., Windus, T.L., Wong, A.T.: High performance computational chemistry: An overview of NWChem, a distributed parallel application. Comput. Phys. Commun. 128, 260–270 (2000)

    Article  MATH  Google Scholar 

  9. Dongarra, J., Eijkhout, V.: Self-adapting numerical software for next generation applications. Int. J. High Performance Computing Applications 17, 125–131 (2003); also LAPACK Working Note 157, ICL-UT-02-07

    Article  Google Scholar 

  10. Whaley, R.C., Petitet, A.: Minimizing development and maintenance costs in supporting persistently optimized BLAS. Software: Practice and Experience 35(2), 101–121 (2005)

    Google Scholar 

  11. Liu, H., Parashar, M.: Enabling self-management of component based high-performance scientific applications. In: Proc. 14th IEEE Int. Symp. on High Performance Distributed Computing. IEEE Computer Society Press, Los Alamitos (2005)

    Google Scholar 

  12. Tapus, C., Chung, I.H., Hollingsworth, J.K.: Active Harmony: Towards automated performance tuning. In: Proc. of SC 2002 (2002)

    Google Scholar 

  13. Vetter, J.S., Worley, P.H.: Asserting performance expectations. In: Proc. SC 2002 (2002)

    Google Scholar 

  14. Bramley, R., Gannon, D., Stuckey, T., Villacis, J., Balasubramanian, J., Akman, E., Berg, F., Diwan, S., Govindaraju, M.: The Linear System Analyzer. In: Enabling Technologies for Computational Science. Kluwer, Dordrecht (2000)

    Google Scholar 

  15. Zhang, K., Damevski, K., Venkatachalapathy, V., Parker, S.: SCIRun2: A CCA framework for high performance computing. In: Proc. 9th Int. Workshop on High-Level Parallel Programming Models and Supportive Environments (HIPS 2004), Santa Fe, NM. IEEE Press, Los Alamitos (2004)

    Google Scholar 

  16. Houstis, E.N., Catlin, A.C., Rice, J.R., Verykios, V.S., Ramakrishnan, N., Houstis, C.E.: A knowledge/database system for managing performance data and recommending scientific software. ACM Transactions on Mathematical Software 26(2), 227–253 (2000)

    Article  MATH  Google Scholar 

  17. McCracken, M.O., Snavely, A., Malony, A.: Performance modeling for dynamic algorithm selection. In: Sloot, P.M.A., Abramson, D., Bogdanov, A.V., Gorbachev, Y.E., Dongarra, J., Zomaya, A.Y. (eds.) ICCS 2003. LNCS, vol. 2660, pp. 749–758. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  18. Vuduc, R., Demmel, J., Bilmes, J.: Statistical models for empirical search-based performance tuning. Int. J. High Performance Computing Applications 18(1), 65–94 (2004)

    Article  MATH  Google Scholar 

  19. Cortellessa, V., Crnkovic, I., Marinelli, F., Potena, P.: Experimenting the automated selection of COTS components based on cost and system requirements. J. Universal Computer Science 14(8), 1228–1256 (2008)

    Google Scholar 

  20. Becker, S., Koziolek, H., Reussner, R.: The Palladio component model for model-driven performance prediction. J. Systems and Software 82(1), 3–22 (2009)

    Article  Google Scholar 

  21. Kappler, T., Koziolek, H., Krogmann, K., Reussner, R.: Towards automatic construction of reusable prediction models for component-based performance engineering. In: Proc. Software Engineering (Feburary 2008)

    Google Scholar 

  22. Shende, S., Malony, A.: The TAU parallel performance system. Int. J. High-Perf. Computing Appl., ACTS Collection special issue 20, 287–331 (Summer 2006)

    Article  Google Scholar 

  23. Taylor, V., Wu, X., Stevens, R.: Prophesy: An infrastructure for performance analysis and modeling of parallel and grid applications. SIGMETRICS Perform. Eval. Rev. 30(4), 13–18 (2003)

    Article  Google Scholar 

  24. de Rose, L.A., Reed, D.A.: SvPablo: A multi-language architecture-independent performance analysis system. In: ICPP 1999: Proc. 1999 International Conference on Parallel Processing. IEEE Computer Society, Los Alamitos (1999)

    Google Scholar 

  25. Jorba, J., Margalef, T., Luque, E.: Performance analysis of parallel applications with KappaPI2. In: Proc. Parallel Computing: Current and Future Issues of High-End Computing, pp. 155–162 (2006)

    Google Scholar 

  26. Voss, M.J., Eigemann, R.: High-level adaptive program optimization with adapt. ACM SIGPLAN Notices 36, 93–102 (2001)

    Article  Google Scholar 

  27. Song, F., Wolf, F., Bhatia, N., Dongarra, J., Moore, S.: An algebra for cross-experiment performance analysis. In: Proc. 2004 International Conference on Parallel Processing (ICPP 2004), Montreal, Quebec, Canada, pp. 63–72 (2004)

    Google Scholar 

  28. Huck, K.A., Malony, A.D., Shende, S., Morris, A.: Scalable, automated performance analysis with TAU and PerfExplorer. In: Parallel Computing (2007)

    Google Scholar 

  29. Szyperski, C.: Component Software: Beyond Object-Oriented Programming. ACM Press, New York (1999)

    Google Scholar 

  30. Kenny, J.P., Benson, S.J., Alexeev, Y., Sarich, J., Janssen, C.L., McInnes, L.C., Krishnan, M., Nieplocha, J., Jurrus, E., Fahlstrom, C., Windus, T.L.: Component-based integration of chemistry and optimization software. J. Computational Chemistry 25(14), 1717–1725 (2004)

    Article  Google Scholar 

  31. Peng, F., Wu, M.S., Sosonkina, M., Bentz, J., Windus, T.L., Gordon, M.S., Kenny, J.P., Janssen, C.L.: Tackling component interoperability in quantum chemistry software. In: Workshop on Component and Framework Technology in High-Performance and Scientific Computing, in conjunction with OOPLSA (2007)

    Google Scholar 

  32. Wu, M.S., Bentz, J., Peng, F., Sosonkina, M., Gordon, M.S., Kendall, R.A.: Integrating performance tools with large-scale scientific software. In: The 8th IEEE International Workshop on Parallel and Distributed Scientific and Engineering Computing (PDSEC 2007), in conjunction with 21st International Parallel and Distributed Processing Symposium (IPDPS 2007), Long Beach, California (March 2007)

    Google Scholar 

  33. Malony, A., Shende, S., Trebon, N., Ray, J., Armstrong, R., Rasmussen, C., Sottile, M.: Performance technology for parallel and distributed component software. Concurrency and Computation: Practice and Experience 17, 117–141 (2005)

    Article  Google Scholar 

  34. Huck, K.A., Malony, A.D., Bell, R., Morris, A.: Design and implementation of a parallel performance data management framework. In: Proc. 2005 International Conference on Parallel Processing, ICPP 2005, pp. 473–482. IEEE Computer Society Press, Los Alamitos (2005)

    Google Scholar 

  35. Witten, I.H., Frank, E.: Data mining: Practical machine learning tools and techniques (2005), http://www.cs.waikato.ac.nz/~ml/weka/

  36. Allan, B., Armstrong, R., Lefantzi, S., Ray, J., Walsh, E., Wolfe, P.: Ccaffeine – a CCA component framework for parallel computing (2003), http://www.cca-forum.org/ccafe/

  37. Møller, C., Plesset, M.S.: Note on an approximation treatment for many-electron systems. Phys. Rev. 46, 618–622 (1934)

    Article  MATH  Google Scholar 

  38. U. S. Dept. of Energy: SciDAC Initiative homepage (2006), http://www.osti.gov/scidac/

  39. Bernholdt D. (PI): TASCS Center, http://www.scidac.gov/compsci/TASCS.html

  40. Lucas, R.(PI): Performance Engineering Research Institute (PERI), http://www.peri-scidac.org

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Li, L. et al. (2009). Adaptive Application Composition in Quantum Chemistry. In: Mirandola, R., Gorton, I., Hofmeister, C. (eds) Architectures for Adaptive Software Systems. QoSA 2009. Lecture Notes in Computer Science, vol 5581. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02351-4_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-02351-4_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-02350-7

  • Online ISBN: 978-3-642-02351-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics