On-node, non-volatile memory (NVRAM) is a game-changing technology that can remove many I/O and memory bottlenecks and provide a key enabler for exascale.
That’s the conclusion drawn by the scientists and researchers of Europe’s NEXTGenIO project, an initiative funded by the European Commission’s Horizon 2020 program to explore this new technology’s potential impact for high-performance computing (HPC).
“When you put vast amounts of high-performance, byte-addressable NVRAM in the compute nodes, everything changes,” said Adrian Jackson, senior research fellow at EPCC, the supercomputing centre at the University of Edinburgh, and the software architect for a 34-node prototype platform the NEXTGenIO partner organizations co-developed to support their research. “The compute nodes become storage nodes as well as memory nodes, and you can scale your I/O bandwidth and use I/O differently. You need the right tools to access the data within the nodes, but you can use the data in different ways depending on your applications.”
The implications are exciting for HPC users like Tiago Quintino, who works with massive, fast-growing data sets at the European Center for Medium-Range Weather Forecasts (ECMWF). “We can do so much more,” he said. “We can have much more complex structures in memory. We can use the data where it is, without having to move it throughout the workflow. With the time we save, we can run more complex workflows, do more physics, increase model resolution. Extrapolating our data growth, which has been increasing three times every two years, an I/O system based on this technology will let me cope for the next 10-15 years. It is a game changer.
Exploring Non-Volatile, On-Node Memory
In addition to EPCC and ECMWF, NEXTGenIO partners include Fujitsu, Intel, Barcelona Supercomputing Center (BSC), the Technical University of Dresden, ARM, and ARCTUR. The platform they co-designed followed a requirements-driven process that also specified realistic constraints. It features a custom motherboard populated with 3 TB of Intel Optane DC persistent memory (DCPMM), dual 2nd Generation Intel Xeon Scalable processors, and 192 GB of DRAM. The Intel Optane DC memory is hosted as standard DIMMS that reside on the memory bus and can be controlled by the CPU’s integrated memory controllers. Nodes also connect to two Intel Omni-Path high-performance networks, making it possible for MPI traffic to travel over one network and storage communications across the other.
Software developed for the system includes a multi-node, local and distributed NVRAM file system that allows legacy applications to transparently benefit from the new memory/storage layer without application changes. The distributed file system uses application object stores to provide data locality and reduce reliance on parallel file systems such as Lustre. Other system software includes performance profiling and debugging tools, as well as extensions to the SLURM scheduler and workload manager for managing data locality and incorporating a job’s energy consumption into job placement decisions.
Fujitsu built the system and motherboard at its facility in Augsburg, Germany, and the system was installed at EPCC in late March 2019. It will be available to NEXTGenIO collaborators and select I/O researchers for the next three years, giving Europe a major resource to advance the understanding and use of a significant new memory technology.
Project members have begun sharing initial results that demonstrate the technology’s impact for varied HPC use cases.[1] Here are three examples.
ECMWF’s Integrated Forecasting System: Intense I/O in a Time-Critical Workflow
Based in the UK, ECMWF produces weather forecasts five to fifteen days out, multiple times per day, for its customers around the world. Its Integrated Forecasting System (IFS) writes its result—about 25 TB per hour—into ECMWF’s distributed Fields Database (FDB). The subsequent workflow involves several hundred postprocessing steps, many conducted in parallel and needing rapid access to the data output. If the central parallel file system is slowed by other workloads, forecasters have to throttle the forecast and slow the model.
Using the NEXTGenIO platform, ECMWF demonstrated the ability to output the data to the new class of memory and significantly increase performance. For IFS writing into ECMWF’s Fields Database, 16 NEXTGenIO nodes delivered 60 GiB/s read bandwidth and 72 GiB/s write bandwidth compared to sustained read throughput of 22.4 GiB/s and write throughput of 20 GiB/s on a system with 288 Lustre Object Store Service (OST) nodes with 10 disks per node. It produced an end-to-end improvement in the workflow of more than an order of magnitude. ECMWF expects to see further improvements upon optimizing the FDB code.
CASTEP: Massive Memory Requirements, Minimal I/O
CASTEP is shared source software that uses density functional theory to calculate material properties from first principles. It is used for a range of materials and substances, including DNA as well as new and exotic elements.
Many CASTEP simulations require large amounts of memory per MPI process, exceeding the memory capacity of typical HPC systems. This often forces users to reduce the number of MPI processes per node, underpopulating the CPUs and running the simulation over many nodes in order to fit the simulation into DRAM.
EPCC used CASTEP to run a memory-hungry DNA simulation on the NEXTGenIO platform, enabling a single DNA simulation that requires 20 nodes when using DRAM-only to run on just a single node, albeit much more slowly. On four nodes (Table 1), using five times fewer, the DCPMM implementation was just over three times slower than an all-DRAM execution on the NEXTGenIO system.
Table 1. CASTEP Benchmark Results
The practical implications are immense, providing HPC sites with an economical and power-efficient if somewhat slower alternative to deploying a full-DRAM platform for workloads where memory requirements outstrip compute needs. The freed nodes can be used for other jobs, optimizing overall throughput and adding to the cost benefits.
OpenFOAM: Heavy I/O with Numerous Small Files
OpenFOAM is an open source 3D computational fluid dynamics package that is effectively a collection of applications used in a complex workflow of tasks from mesh creation through postprocessing.
Here the challenge is not only the overall quantity of data, but also the large number of small files written for each time step. To explore the problem, EPCC simulated the air flow around a small electric aircraft. In 1,000 time steps, OpenFOAM was configured to write its results every five time steps. Running on 16 nodes with 448 processes, the interim results reached 806,400 files and 1.2 TB of data. Performance analysis showed that in a traditional implementation, I/O consumed 50 percent of the execution time, severely limiting scalability.
EPCC used the system software to effectively mount a node-local file system on the compute nodes’ Intel Optane DC memory. Interim results were written to the local node, using the DCPMM as storage and having the system software move the data on and off the nodes as needed. This reduced the overall runtime by as much as 50 percent, and the advantage increased with scale. These runtime savings provide opportunities to do more compute and explore more solution alternatives.
Insights from Early Adopters
NEXTGenIO collaborators offered the following suggestions for HPC users and technology innovators.
- Think differently. “Don’t judge this technology the way you judge a parallel file system like Lustre,” said Quintino. “Lustre is like a truck—it moves a lot of data slowly. Given a lot of trucks, you can move a lot of data and have a lot of throughput. This is a Formula One race car, the pinnacle of an I/O system. It can be the first layer in a layered system, it can be a burst buffer, but we should think beyond that. It opens workflows we’ve never thought of before.”
- Be curious. Think about what use cases are pertinent to your workload and data center challenges. “At ECMWF, DCPMM is part of the storage hierarchy,” said Jackson. “Other apps can use it as a file store, or as a multi-node file system that uses the memory to do normal parallel I/O. Some are using it to create a larger memory space so they can put a problem in a single node instead of 20 or 30 nodes. Exploiting DCPMM requires careful thought and design for applications, but the benefits can be large.”
- Be willing to do some work. Quintino compares Intel Optane DC persistent memory to GPUs, which required some code modifications to fully benefit from. While DCPMM can be used without code modifications, many applications will benefit from explicit control of the memory. Intel offers tools and libraries to facilitate using the memory’s full feature set.
A Way to Do More Science
The NEXTGenIO platform will be available to HPC users whose research goals are compatible with those of the NEXTGenIO project. Fujitsu is offering the new class of memory for select PRIMERGY and PRIMEQUEST models, and its technical teams are applying their NEXTGenIO learnings as they consult with customers.
Intel Optane DC persistent memory and the innovation added by the NEXTGenIO partners mark a welcome change in the HPC landscape, according to Michèle Weiland, a senior research fellow at EPCC and project manager for NEXTGenIO. “DCPMM represents a change in the landscape in how memory, I/O, and storage systems will evolve over next few years,” she said. “It can potentially show that there’s a way out of the problems we’re currently seeing. For people who are struggling with current traditional HPC systems, who don’t have enough memory or fast enough storage, or who are limited by the amount of data they can write, this approach may give them a way to improve this, and do more science.”
To learn more about the NEXTGenIO project, visit http://nextgenio.eu
For information about gaining access to the platform, contact Professor Mark Parsons, [email protected], or Dr Michèle Weiland, [email protected]
About the Author
Jan Rowell covers technology trends and innovations in HPC, artificial intelligence, and other areas.
[1] A paper describing some of these results will appear as “An Early Evaluation of Intel’s Optane DC Persistent Memory Module and its Impact on High Performance Scientific Applications” by Michèle Weiland and others, in SC ’19 Proceedings of the International Conference for High Performance Computing, Networking, Storage, and Analysis. Quintino and others from ECMWF describe the object-store file system in “A High-Performance Distributed Object-Store for Exascale Numerical Weather Prediction and Climate,” in PASC ’19: Proceedings of the Platform for Advanced Scientific Computing Conference, https://dl.acm.org/citation.cfm?id=3324989.3325726