Engineering topics
Pourmal, Elena
Publications and source records attributed to Pourmal, Elena.
PSIP For HDF5 Pilot Project (Final Report)
Productivity and Sustainability Improvement Planning (PSIP) is a lightweight, incremental and iterative approach (much in the same spirit as Agile methodologies) for making routine software process improvements in software projects. It is designed to be easily applied in existing development workflows. Quoting from a November 2019 workshop paper describing PSIP. PSIP breaks from classic software process improvement approaches such as CMM(I), SPICE, ISO 9000 or Six Sigma, in that it trades comprehensive standards and certification-driven assessment for self-defined, internally driven goals. It does, however, carry forward such ideas as having staged models of improvement (like CMM(I)) in the form of progress tracking cards. Additionally, PSIP is more aligned with lean and agile methods; it adopts their emphasis on iterative improvement and continuous learning. At its core, PSIP is an instantiation of the Plan-Do-Check-Act management cycle (PDCA, also known as Plan-Do-Study-Adjust) which provides the foundation for much of the modern software process improvement literature. This situates PSIP within a constellation of bottom-up, inductive software process improvement methods. PSIP is designed around the notion that already overburdened teams can define and carry out a series of small, incremental steps of progression towards improvement goals without significant (there will be some, but the goal is to avoid significant) disruption to ongoing development activities. A key enabling tool in PSIP is the use of Progress Tracking Cards (PTCs) which define the steps of progression towards a given improvement goal. This is the theory of PSIP. The PSIP for HDF5 project was aimed at putting PSIP into practice with the purpose of evaluating its effectiveness in planning and facilitating quality and process improvements in a scientific software project as well as its associated artifacts. The HDF5 project was chosen as a use case to evaluate PSIP for several reasons. First, NNSA labs and LLNL in particular have a keen interest in how HDF5 quality impacts its uptake and sustainability as a community adopted and supported code. Next, HDF5 is a foundational library, a key substrate in the HPC/CSE software stack, and any improvements there realized through this contract will have benefits to many DOE applications depending on it. HDF5 also represents an older, legacy code with technical debts to pay down. These characteristics are similar to many NNSA and even some ECP code projects. But, because HDF5 is an I/O library, it represents a simpler use case within which to study PSIP than a full-fledged and significantly more complex PDE simulation code. We believe these attributes make HDF5 an ideal use case for evaluating PSIP.
ExaHDF5: Delivering Efficient Parallel I/O on Exascale Computing Systems
Scientific applications at exascale generate and analyze massive amounts of data. A critical requirement of these applications is the capability to access and manage this data efficiently on exascale systems. As such, parallel I/O, the key technology enables moving data between compute nodes and storage, faces monumental challenges from new applications, memory, and storage architectures considered in the designs of exascale systems. As the storage hierarchy is expanding to include node-local persistent memory, burst buffers, etc., as well as disk-based storage, data movement among these layers must be efficient. Parallel I/O libraries of the future should be capable of handling file sizes of many terabytes and beyond. In this paper, we describe new capabilities we have developed in Hierarchical Data Format version 5 (HDF5), the most popular parallel I/O library for scientific applications. HDF5 is one of the most used libraries at the leadership computing facilities for performing parallel I/O on existing HPC systems. The state-of-the-art features we describe include: Virtual Object Layer (VOL), Data Elevator, asynchronous I/O, full-featured single-writer and multiple-reader (Full SWMR), and parallel querying. In this paper, we introduce these features, their implementations, and the performance and feature benefits to applications and other libraries.
Using Big Data Technologies with Earth Science Data in HDF5: HDF5 Scalable Solutions
HDF5 (Hierarchical Data Format 5) is open-source, high-performance software that consists of an abstract data model, library, and fileformat used for storing and managing extremely large and/or complex data collections. NASA Earth Observing System (EOS) Data and Information Systems use HDF5 as an archival format to store remote sensing data from EOS satellites. HDF5 is also used to store other types of Geoscience and Strophysical data, e.g., seismic data and data from Low-Frequency Array (LOFAR) radio telescopes. Data stored in HDF5 has reached tens of petabytes and is growing at an accelerated rate.With the growing amout of HDF5 Earth Science data to analyze and process, scientists need to adopt big data technologies including new storage paradigms such as cloud and object storage. To run models and perform data analysis they also need to utilizied efficient and diverse ways to access data, from high-performance computing's (HPC) Message Passing Interface (MPI) I/O and deep memory hierarchies (DMH) to non-HPC frameworks such as Apache Hadoop, Spark, and Drill. The HDF Group continually works to enable usage of big data technologies in HDF software.
Sparse Data Management in HDF5
The importance of sparse data management is growing with data produced by large-scale experimental and observational facilities that contain small amounts of non-zero values. In this document, we explore different design options to support sparse data in HDF5, one of the most popular highperformance I/O libraries and file formats used for scientific data. We discuss several use cases and requirements. Our main hard design constraint is that any changes to the HDF5 dataset API would be a burden on users and not acceptable. The remaining options are discussed below. We provide rationale for what we believe is the strongest candidate and describe how its potential benefits can be simulated with the existing HDF5 library. We have conducted a set of computational experiments the results of which are reported here. They show that our candidate meets all relevant requirements and gives us a certain degree of confidence for an HDF5 library-native implementation.
HDF5 Roadmap 2019-2020
In this talk we will give an overview of the new features of the upcoming HDF5 release 1.12.0, and outline the HDF5 roadmap for the next year. We will demonstrate new open source file drivers to access HDF5 files via Amazon Simple Storage Service (Amazon S3) and on Hadoop Distributed File system (HDFS). We will use this presentation to get feedback on the HDF5 roadmap from the ESDIS users and application developers.
Hierarchical Data Format (HDF) Status Update
In the "Hierarchical Data Format (HDF) Status Update" talk we will give an update on the recent and upcoming HDF5 software releases, and how to upgrade HDF5-based software to the new major releases HDF5 1.10.* to assure backward and forward compatibility for the files produces with the newest versions of the HDF5 software. We will also focus on a compression feature of HDF5 and will talk about new mechanism for storing HDF5 data in Object Store.
Moving from HDF4 to HDF5/netCFD-4
In this presentation, we will go over the major differences between two file formats and libraries, and will talk about the HDF5 features that users should consider when designing new products in HDF5netCDF4. We will also discuss the h4h5tools toolkit that can facilitate conversion of data in the existing HDF4 files to HDF5 and netCDF-4, and we will engage the participants in the discussion of how The HDF Group can help with the transition and adoption of HDF5 and netCDF-4.
Hierarchical Data Formats (HDF) Update
In this presentation, we will talk about the latest releases of HDF4 and HDF5 software and tools, new features available in HDF5, and roadmap for the HDF software. We will also solicit feedback from the users of HDF data and HDF application developers on new features and new tools. The talk will cover: Difference between 1.8 and 1.10 releases and how and when to move to the latest release Features of the recent HDF5 1.8.19, 1.10.1 and HDF 4.2.13 Overview of HDF View 3.0 and other enhancements to tools Supported compilers and systems Open discussion of new requirements and wish list of the HDF features Compression library for interoperability with h5py and Pandas and better floating-point data compression.
HDF Update
The HDF Group maintains and evolves HDF software used by NASA ESDIS program to manage remote sense data. In this talk we will discuss new features of HDF (Virtual Datasets, Single writerMultiple reader access, Community supported HDF5 compression filters) that address storage and IO performance requirements of the applications that work with the ESDIS data products.