Hardware Reference
In-Depth Information
Chapter 1
Parallel I/O at HPC Facilities
Galen Shipman
Oak Ridge National Laboratory
Modern high performance computing facilities deliver computational and data
resources to an ever broadening set of scientific and engineering domains.
What was once a cottage industry just two decades ago, HPC is now integral
to studies ranging from biology to materials science and everything in between.
These domains are using simulation at ever increasing scales driven by increas-
ingly higher resolution models with more accurate representation of physical
processes. This confluence has resulted in the build-out of extreme-scale HPC
facilities with compute platforms composed of hundreds of thousands of com-
pute cores, high performance networking infrastructures, and parallel I/O en-
vironments capable of scaling to terabytes/second of I/O bandwidth while
providing tens of petabytes of capacity.
To meet the required performance and capacity levels of modern HPC fa-
cilities, these large-scale parallel I/O environments may comprise thousands
or tens of thousands of hard disk drives, thousands of networking ports, and
several hundred storage servers. These components are then integrated into
usable systems through complex software stacks beginning with parallel file
system technologies such as IBM's General Parallel File System (GPFS) ,
Lustre, Panasas, and the Parallel Virtual File System (PVFS). These parallel
file systems have come to be relied upon as both a reliable and high perfor-
mance persistent storage infrastructure. To maintain compatibility with the
broadest base of applications while enabling high performance, each of these
systems provides a POSIX interface while supporting concurrent access to
one or more files within the namespace from one or more compute nodes in
the HPC environment. This ability to provide parallel access while retaining
POSIX semantics has fueled the adoption of parallel file systems across HPC.
While POSIX provides a ubiquitous interface for applications, the appli-
cation developer is burdened with the increasingly complex task of map-
ping complex data structures that may span hundreds or even thousands
of distributed memory compute nodes into one or more files. Many applica-
tions therefore make use of higher-level I/O libraries such as the Hierarchical
Data Form (HDF), the Network Common Data Format (NetCDF), or the
3
 
Search WWH ::




Custom Search