skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Smart Libraries: Best SQE Practices for Libraries with an Emphasis on Scientific Computing

Abstract

As scientific computing applications grow in complexity, more and more functionality is being packaged in independently developed libraries. Worse, as the computing environments in which these applications run grow in complexity, it gets easier to make mistakes in building, installing and using libraries as well as the applications that depend on them. Unfortunately, SQA standards so far developed focus primarily on applications, not libraries. We show that SQA standards for libraries differ from applications in many respects. We introduce and describe a variety of practices aimed at minimizing the likelihood of making mistakes in using libraries and at maximizing users' ability to diagnose and correct them when they occur. We introduce the term Smart Library to refer to a library that is developed with these basic principles in mind. We draw upon specific examples from existing products we believe incorporate smart features: MPI, a parallel message passing library, and HDF5 and SAF, both of which are parallel I/O libraries supporting scientific computing applications. We conclude with a narrative of some real-world experiences in using smart libraries with Ale3d, VisIt and SAF.

Authors:
; ; ; ;
Publication Date:
Research Org.:
Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
936460
Report Number(s):
UCRL-JRNL-208636
TRN: US200818%%745
DOE Contract Number:  
W-7405-ENG-48
Resource Type:
Journal Article
Journal Name:
Proceedings of the Nuclear Explosives Code Developer's Conference 2004, vol. 1, N/A, December 15, 2004, unknown
Additional Journal Information:
Journal Name: Proceedings of the Nuclear Explosives Code Developer's Conference 2004, vol. 1, N/A, December 15, 2004, unknown
Country of Publication:
United States
Language:
English
Subject:
99 GENERAL AND MISCELLANEOUS; COMPUTER CODES; DATA TRANSMISSION; PARALLEL PROCESSING; DATA BASE MANAGEMENT

Citation Formats

Miller, M C, Reus, J F, Matzke, R P, Koziol, Q A, and Cheng, A P. Smart Libraries: Best SQE Practices for Libraries with an Emphasis on Scientific Computing. United States: N. p., 2004. Web.
Miller, M C, Reus, J F, Matzke, R P, Koziol, Q A, & Cheng, A P. Smart Libraries: Best SQE Practices for Libraries with an Emphasis on Scientific Computing. United States.
Miller, M C, Reus, J F, Matzke, R P, Koziol, Q A, and Cheng, A P. Wed . "Smart Libraries: Best SQE Practices for Libraries with an Emphasis on Scientific Computing". United States. https://www.osti.gov/servlets/purl/936460.
@article{osti_936460,
title = {Smart Libraries: Best SQE Practices for Libraries with an Emphasis on Scientific Computing},
author = {Miller, M C and Reus, J F and Matzke, R P and Koziol, Q A and Cheng, A P},
abstractNote = {As scientific computing applications grow in complexity, more and more functionality is being packaged in independently developed libraries. Worse, as the computing environments in which these applications run grow in complexity, it gets easier to make mistakes in building, installing and using libraries as well as the applications that depend on them. Unfortunately, SQA standards so far developed focus primarily on applications, not libraries. We show that SQA standards for libraries differ from applications in many respects. We introduce and describe a variety of practices aimed at minimizing the likelihood of making mistakes in using libraries and at maximizing users' ability to diagnose and correct them when they occur. We introduce the term Smart Library to refer to a library that is developed with these basic principles in mind. We draw upon specific examples from existing products we believe incorporate smart features: MPI, a parallel message passing library, and HDF5 and SAF, both of which are parallel I/O libraries supporting scientific computing applications. We conclude with a narrative of some real-world experiences in using smart libraries with Ale3d, VisIt and SAF.},
doi = {},
journal = {Proceedings of the Nuclear Explosives Code Developer's Conference 2004, vol. 1, N/A, December 15, 2004, unknown},
number = ,
volume = ,
place = {United States},
year = {2004},
month = {12}
}