Despite exponential increases in computing power over the last couple of decades, many physical processes still present unique challenges for researchers seeking to advance their fields via modeling and simulation.
These processes are so complex that accurately capturing the entirety of their physics is rarely possible with one application. In these cases, researchers look to “couple,” or combine, different codes to get the answers they need.
One such area primed for application coupling is nuclear fusion, or replicating the process that fuels our sun in a magnetic bottle on Earth in the hopes it could one day provide the world with a virtually unlimited, and clean, power source. Fusion energy’s physics are notoriously tricky, requiring a powerful yet delicate plasma to be magnetically confined and sustained at temperatures approaching 10,000 times the core of the sun.
But as computers approach the exascale, or an entire order of magnitude more powerful than today’s leading systems, an unparalleled understanding of what goes on in fusion power devices—and, by extension, the possibility of commercial fusion power—may finally be within reach.
The core and edge regions have very different physics, but because they affect not only one another but also the strength and stability of the reaction, simulating them simultaneously is necessary to truly advance our understanding of fusion plasmas and bring fusion one step closer to reality.
And researchers at Oak Ridge National Laboratory and Princeton Plasma Physics Laboratory have done just that. These two teams partnered with others from Argonne National Laboratory, Lawrence Livermore National Laboratory, Rutgers University, The University of Texas at Austin, Lawrence Berkeley National Laboratory, Georgia Tech, Kitware, Brown University, Sandia National Lab, New Jersey Institute of Technology, and the University of Oregon, to successfully couple separate core and edge applications for the first time.
Using ORNL's Titan, the fastest computer in the US for open science, the team was able to couple two codes: the popular XGC1 code, which simulates behavior of the ions, electrons and neutral atoms in the barrier region between the core and the material wall, and GENE, which simulates the plasma core.
The work represents more than just a milestone for plasma physics; it also brings researchers one step closer to the coupling of separate applications necessary to truly simulate fusion plasmas and other complex physical phenomena.
The successful simulation grew out of a plan hatched among ORNL’s Scott Klasky, PPPL’s C-S Chang and Amitava Bhattacharjee, and The University of Texas at Austin’s Frank Jenko to couple XGC and GENE in a four-year time frame as part of a much larger goal by the Department of Energy’s Exascale Computing Project to model an entire fusion device in less than 10 years. Such a window was necessary to prepare for a truly coupled-application run, in which fusion’s spatial, temporal and physical characteristics must be seamlessly married. And because of fusion’s disparities in spatial and temporal scales, a framework for modeling an entire fusion device had to be codesigned with experts in physics, computer science, applied math and hardware technologies.
Coupling the two codes in a somewhat simplified manner, yet with all the essential ingredients, was the logical first step. “We knew that if we couldn’t run this coupled simulation on Titan with simplified physics, we would have to rethink our coupling timeline,” said Klasky, who added that the coupling was only possible thanks to the hard work of colleagues Julien Dominski, Gabriele Merlo and Eric Suchyta.
Norbert Podhorszki, the chief scientist in charge of coupling the physics codes, noted: “Creating a scalable framework to help us achieve unlimited energy through fusion is an incredible motivator for computer scientists.”
"Our team worked together with more than 40 scientists from nine organizations to integrate numerous separate projects in a matter of days," said Podhorszki. "These efforts motivate many of the younger scientists in our group and allow us to be creative in solving complex problems critical to the DOE mission."
The coupling was further complicated by the fact that the codes themselves are based on different methodologies. XGC1 is a Particle-In-Cell (PIC) code, which monitors the individual interactions between particles that can greatly alter the behavior of the edges of the plasma. GENE on the other hand is a continuum code, meaning it makes assumptions that the material being simulated is smoothly varying over space, enabling the simulation of the average behavior of small regions in order to build a picture of the overall system.
Beyond the codes there were other components, such as data reduction and visualization, that had to be married as well; in all, 11 different components were seamlessly integrated. This required a delicate balancing act because the incorporation of the various components meant making tradeoffs in both individual performances and the performance of the larger simulation.
“It proved our ability to compose numerous services together on an HPC resource and place the ‘right’ processing at the ‘right place,’” said Klasky, adding that by using ORNL’s ADIOS middleware package, they were able to conduct the entire enterprise solely in memory, resulting in an efficient exascale service-oriented architecture for the coupling of fusion codes.
A collaborative effort
Whereas the vision for the simultaneous simulation came from Klasky, Chang, Bhattacharjee and Jenko, the simulations themselves required collaboration across multiple agencies including DOE’s Exascale Computing Project, the Scientific Discovery through Advanced Computing program, and the Office of Advanced Scientific Computing Research.
“This milestone wouldn’t have been possible without this collaboration across agencies and teams,” said Klasky.
Of course, having one of the world’s most powerful computers didn’t hurt, either. Simulating the edge and core separately is highly demanding in its own right, but simulating them concurrently required a machine with Titan’s power.
But machines like Titan present their own challenges, and to ensure they were making the most of the Cray XK7 and that the simulations were running smoothly, the team developed a coupling framework capable of constantly monitoring XGC’s performance.
Besides enabling the current simulations, the framework will be immensely helpful in understanding the impact of different exascale tradeoffs for next-generation machines. “Big computers like Titan exist to solve large problems. And to do that, you must use as much of the machine as possible,” said Klasky, adding that running these complex simulations on next-generation DOE machines, including Summit at ORNL, will be critical to fusion’s success.
Furthermore, understanding performance tradeoffs on collaborators’ machines, such as TSUBAME 3, will further enable the team to streamline coupling going forward. Attaining such an understanding meant monitoring the simulation itself, along with the various I/O, data reduction and visualization components, in real time. This real-time monitoring enabled the team to correct mistakes as they unfolded, increasing the validity of the results and reducing time to solution.
Klasky said all of the components were run together in memory, thus allowing the relevant specialists to monitor their specific areas of interests.
“The physicists can look at the physics, the computational scientists can monitor performance, and the visualization team can ensure the visualization is accurate,” he said. “People can run complex situations that involve coupling, visualization and performance, with the codes composed and optimized for the largest machines in the world.”
And although the current domain of interest is fusion, Klasky said that the same framework could be applied to chemistry, molecular dynamics and nearly any other science domain capable of taking advantage of science’s most powerful computers.
“We’ve made a critical step toward application coupling but have really only scratched the surface,” said Klasky.
In fact, the team is now working with Hub Van Dam of Brookhaven National Laboratory to apply its framework to the popular computational chemistry code NW Chem, paving the way for the rest of the scientific spectrum to take advantage of the unprecedented computing power just around the corner.
The team included Qing Liu and William Godoy on ADIOS; Manish Parashar and Philip Davis on Dataspaces; Julien Dominski, Jong Choi and Eric Suchyta on the ECP code coupler; Greg Eisenhauer on Flexpath; Kshitij Mehta, Bryce Allen and Matthew Wolf on Savanna-Cheetah; Kevin Huck on TAU and SOS; David Pugmire, James Kress and Mark Kim on the visualization services; Berk Geveci, Ken Moreland and Donglian Chu on VTK-M; Robert Hager on XGC-core; Seung Hoe Ku and Michael Churchill on XGC-edge; Gabriele Merlo and Frank Jenko on GENE; and Scott Klasky, C-S Chang, Norbert Podhorszki, Ian Foster and Todd Munson for overall leadership.
Titan is part of the Oak Ridge Leadership Computing Facility, a DOE Office of Science User Facility.
ORNL is managed by UT-Battelle for the Department of Energy's Office of Science, the single largest supporter of basic research in the physical sciences in the United States. DOE’s Office of Science is working to address some of the most pressing challenges of our time. For more information, please visit http://science.energy.gov/.