Skip to main content

Towards a Unified Requirements Model for Distributed High Performance Computing

  • Chapter
  • First Online:
  • 685 Accesses

Part of the book series: Lecture Notes on Data Engineering and Communications Technologies ((LNDECT,volume 40))

Abstract

High Performance Computing (HPC) consists in development and execution of sophisticated computation applications, developed by highly skilled IT personnel. Several past studies report significant problems with applying HPC in industry practice. This is caused by lack of necessary IT skills in developing highly parallelised and distributed computation software. This calls for new methods to reduce software development effort when constructing new computation applications. In this paper we propose a generic requirements model consisting of a conceptual domain specification, unified domain vocabulary and use-case-based functional requirements. Vocabulary definition provides detailed clarifications of HPC fundamental component elements and their role in the system. Further we address security issues by providing transparency principles for HPC. We also propose a research agenda that leads to the creation of a model-based software development system dedicated to building Distributed HPC applications at a high level of abstraction, with the object of making HPC more available for smaller institutions.

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   39.99
Price excludes VAT (USA)
  • Available as EPUB and 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

Learn about institutional subscriptions

References

  1. Armstrong R, Gannon D, et al (1999) Toward a common component architecture for high-performance scientific computing. In: Proceedings. The eighth international symposium on high performance distributed computing. IEEE Computer Society, pp 115–124

    Google Scholar 

  2. Bernholdt DE, Allan BA et al (2006) A component architecture for high-performance scientific computing. Int J High Perform Comput Appl 20(2):163–202. https://doi.org/10.1177/1094342006064488

    Article  Google Scholar 

  3. Blaze M, Feigenbaum J, Ioannidis J, Keromytis AD (1999) The role of trust management in distributed systems security. In: Secure internet programming. Springer Berlin Heidelberg, pp 185–210

    Chapter  Google Scholar 

  4. Blaze M, Feigenbaum J, Lacy J (1996) Decentralized trust management. In: Proceedings 1996 IEEE symposium on security and privacy. IEEE, pp 164–173

    Google Scholar 

  5. Bryant BR, Gray J, Mernik M (2010) Domain-specific software engineering. In: Proceedings of the FSE/SDP workshop on future of software engineering research. ACM, pp 65–68. https://doi.org/10.1145/1882362.1882376

  6. Bunch C, Chohan N, et al (2011) Neptune: a domain specific language for deploying HPC software on cloud platforms. In: Proceedings of the 2nd international workshop on scientific cloud computing - scienceCloud 11. ACM Press, pp. 59–68. https://doi.org/10.1145/1996109.1996120

  7. Cappello F, Djilali S, Fedak G, Herault T, Magniette F, Néri V, Lodygensky O (2005) Computing on large-scale distributed systems: xtremWeb architecture, programming models, security, tests and convergence with grid. Futur Gener Comput Syst 21(3):417–437. https://doi.org/10.1016/j.future.2004.04.011

    Article  Google Scholar 

  8. Dongarra J, Sterling T, Simon H, Strohmaier E (2005) High-performance computing: clusters, constellations, MPPs, and future directions. Comput Sci Eng 7(2):51–59. https://doi.org/10.1109/mcse.2005.34

    Article  Google Scholar 

  9. Foster I, Zhao Y, Raicu I, Lu S (2008) Cloud computing and grid computing 360-degree compared. In: 2008 grid computing environments workshop. IEEE, pp 1–10. https://doi.org/10.1109/gce.2008.4738445

  10. Giles MB, Reguly I (2014) Trends in high-performance computing for engineering calculations. Philos Trans R Soc A: Math, Phys Eng Sci 372. https://doi.org/10.1098/rsta.2013.0319

    Article  Google Scholar 

  11. Grimshaw AS, Wulf WA et al (1997) The legion vision of a worldwide virtual computer. Commun ACM 40(1):39–45. https://doi.org/10.1145/242857.242867

    Article  Google Scholar 

  12. Hager G, Wellein G (2010) Introduction to high performance computing for scientists and engineers. CRC Press

    Google Scholar 

  13. Hernández F, Bangalore P, Reilly K (2005) Automating the development of scientific applications using domain-specific modeling. In: Proceedings of the second international workshop on Software engineering for high performance computing system applications - SE-HPCS 05. ACM Press, pp 50–54. https://doi.org/10.1145/1145319.1145334

  14. Lampson B, Rivest R (1997) Cryptography and information security group research project: a simple distributed security infrastructure. Technical report, Technical report, MIT

    Google Scholar 

  15. Laure E (2000) Distributed high performance computing with OpusJava. In: Parallel computing: fundamentals and applications. Published by Imperial College Press and Distributed by World Scientific Publishing Co., pp 590–597. https://doi.org/10.1142/9781848160170_0070

  16. Laure E (2001) High level support for distributed high performance computing. Ph.D. thesis, University of Vienna

    Google Scholar 

  17. Li Y (2015) DRUMS: domain-specific requirements modelingfor scientists. Ph.D. thesis, Technische Universität München

    Google Scholar 

  18. Li Y, Guzman E, Bruegge B (2015) Effective requirements engineering for CSE projects: a lightweight tool. In: 18th international conference on computational science and engineering. IEEE, pp. 253–261. https://doi.org/10.1109/cse.2015.49

  19. Liu H, Parashar M (2005) Enabling self-management of component-based high-performance scientific applications. In: 14th IEEE international symposium on high performance distributed computing, HPDC-14. IEEE, pp 59–68

    Google Scholar 

  20. Membarth R, Hannig F, et al (2012) Towards domain-specific computing for stencil codes in HPC. In: 2012 SC companion: high performance computing, networking storage and analysis. IEEE, pp 1133–1138. https://doi.org/10.1109/sc.companion.2012.136

  21. Merkel D (2014) Docker: lightweight linux containers for consistent development and deployment. Linux J 2014(239). http://dl.acm.org/citation.cfm?id=2600239.2600241

  22. Moreira JE, Midkiff SP et al (2000) Java programming for high-performance numerical computing. IBM Syst J 39(1):21–56. https://doi.org/10.1147/sj.391.0021

    Article  Google Scholar 

  23. Palyart M, Lugato D, Ober I, Bruel JM (2011) MDE4HPC: an approach for using model-driven engineering in high-performance computing. In: SDL 2011: integrating system and software modeling, vol 7083, pp. 247–261. https://doi.org/10.1007/978-3-642-25264-8_19

    Google Scholar 

  24. Palyart M, Ober I (2012) Other: HPCML: a modeling language dedicated to high-performance scientific computing. In: Proceedings of the 1st international workshop on model-Driven engineering for High performance and CLoud computing - MDHPCL12. https://doi.org/10.1145/2446224.2446230

  25. Ranjan R, Benatallah B et al (2015) Cloud resource orchestration programming: overview, issues, and directions. IEEE Internet Comput 19(5):46–56. https://doi.org/10.1109/mic.2015.20

    Article  Google Scholar 

  26. Schmidberger M, Brugge B (2012) Need of software engineering methods for high performance computing applications. In: 11th international symposium on parallel and distributed computing. IEEE, pp 40–46. https://doi.org/10.1109/ispdc.2012.14

  27. Schmitt C, Kuckuk S, et al (2014) ExaSlang: a domain-specific language for highly scalable multigrid solvers. In: 4th International workshop on domain-specific languages and high-level frameworks for high performance computing. IEEE, pp 42–51. https://doi.org/10.1109/wolfhpc.2014.11

  28. Teliba H, Cisterninoa M, Ruggierob V, Bernardc F (2016) RAPHI: rarefied flow simulations on xeon phi architecture. Technical report, SHAPE Project

    Google Scholar 

  29. Van De Vanter ML, Post DE, Zosel ME (2005) HPC needs a tool strategy. In: Proceedings of the second international workshop on software engineering for high performance computing system applications - SE-HPCS 05. ACM Press, pp 55–59. https://doi.org/10.1145/1145319.1145335

  30. Vecchiola C, Pandey S, Buyya R (2009) High-performance cloud computing: a view of scientific applications. In: 2009 10th international symposium on pervasive systems, algorithms, and networks. IEEE, pp. 4–16. https://doi.org/10.1109/i-span.2009.150

Download references

Acknowledgements

This work is partially funded from the European Regional Development Fund, Interreg Baltic Sea Region programme, project BalticLSC #R075.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michał Śmiałek .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Śmiałek, M., Rybiński, K., Roszczyk, R., Marek, K. (2020). Towards a Unified Requirements Model for Distributed High Performance Computing. In: Poniszewska-Marańda, A., Kryvinska, N., Jarząbek, S., Madeyski, L. (eds) Data-Centric Business and Applications. Lecture Notes on Data Engineering and Communications Technologies, vol 40. Springer, Cham. https://doi.org/10.1007/978-3-030-34706-2_1

Download citation

Publish with us

Policies and ethics