Advertisement

Buildtest: A Software Testing Framework with Module Operations for HPC Systems

  • Shahzeb SiddiquiEmail author
Conference paper
  • 15 Downloads
Part of the Communications in Computer and Information Science book series (CCIS, volume 1190)

Abstract

HPC support teams are often tasked with installing scientific software for their user community and the complexity of managing a large software stack gets very challenging. Software installation brings forth many challenges that requires a team of domain expertise and countless hours troubleshooting to build an optimal software state that is tuned to the architecture. In the past decade, two software build tools (Easybuild, Spack) have emerged that are widely accepted in HPC community to accelerate building a complete software stack for HPC systems. The support team are constantly involved in fulfilling software request for end-users which leads to an ever-growing software ecosystem. Once a software is installed, the support team hands it off to the user without any testing because scientific software requires domain expertise in order to test software. Some software packages are shipped with a test suite that can be run at post build while many software have no mechanism for testing. This poses a knowledge gap between HPC support team and end-users on the type of testing to do. Some HPC centers may have developed in-house test scripts that are suitable for testing their software, but these tests are not portable due to hardcoded paths and are often site dependent. In addition, there is no collaboration between HPC sites in building a test repository that will benefit the community. This paper presents buildtest, a framework to automate software testing for a software stack along with several module operations that would be of interest to the HPC support team.

References

  1. 1.
    Furlani, J.L.: Modules: providing a flexible user environment. In: Proceedings of the Fifth Large Installation Systems Administration Conference (LISA V), pp. 141–152 (1991)Google Scholar
  2. 2.
    Furlani, J.L., Osel, P.W.: Abstract yourself with modules. In: Proceeding of the Tenth Large Installation System Administration (LISA 1996), pp. 193–204 (1996)Google Scholar
  3. 3.
    Geimer, M., Hoste, K., McLay, R.: Modern scientific software management using EasyBuild and Lmod. In: 2014 First International Workshop on HPC User Support Tools (2014).  https://doi.org/10.1109/hust.2014.8
  4. 4.
    Hoste, K., Timmerman, J., Georges, A., Weirdt, S.D.: EasyBuild: building software with ease. In: 2012 SC Companion: High Performance Computing, Networking Storage and Analysis (2012).  https://doi.org/10.1109/sc.companion.2012.81
  5. 5.
    Gamblin, T., et al.: The Spack package manager. In: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis - SC 2015 (2015).  https://doi.org/10.1145/2807591.2807623
  6. 6.
  7. 7.
  8. 8.
  9. 9.
  10. 10.
  11. 11.
  12. 12.
  13. 13.
  14. 14.
  15. 15.
  16. 16.
  17. 17.
  18. 18.
  19. 19.
    Besseron, X.: Automatic Testing of Installed Software. FOSDEM 2014. https://archive.fosdem.org/2014/schedule/event/hpc_devroom_automatic_testing/
  20. 20.
    Idaho National Laboratory: hpcswtest. https://github.com/idaholab/hpcswtest
  21. 21.
    Swiss National Supercomputing Center (CSCS): ReFrame. https://github.com/eth-cscs/reframe
  22. 22.
  23. 23.
  24. 24.
  25. 25.

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  1. 1.Pfizer Inc. Groton & LabsGrotonUSA

Personalised recommendations