  Checkpointing large amounts of related data concurrently to stable storage is
a common I/O pattern of many HPC applications. However, such a pattern
frequently leads to I/O bottlenecks that lead to poor scalability and
performance. As modern HPC infrastructures continue to evolve, there is a
growing gap between compute capacity vs. I/O capabilities. Furthermore, the
storage hierarchy is becoming increasingly heterogeneous: in addition to
parallel file systems, it comprises burst buffers, key-value stores, deep
memory hierarchies at node level, etc. In this context, state of art is
insufficient to deal with the diversity of vendor APIs, performance and
persistency characteristics. This extended abstract presents an overview of
VeloC (Very Low Overhead Checkpointing System), a checkpointing runtime
specifically design to address these challenges for the next generation
Exascale HPC applications and systems. VeloC offers a simple API at user level,
while employing an advanced multi-level resilience strategy that transparently
optimizes the performance and scalability of checkpointing by leveraging
heterogeneous storage.
