These supercomputers test nukes

Posted by TG Daily Staff


Due to their complexity, the simulations must be run on supercomputers with thousands of processors - inevitably creating a number of reliability and accuracy issues.

These supercomputers test nukes

Indeed, the simulations, which are required to more efficiently certify nuclear weapons, may demand the use of up to 100,000 machines, a level of complexity that is essential to accurately render molecular-scale reactions taking place over milliseconds, or thousandths of a second.

Fortunately, researchers at Purdue and the National Nuclear Security Administration's (NNSA) Lawrence Livermore National Laboratory say they have made progress in advancing the use of ultra-precise simulations.

"Such highly complex jobs must be split into many processes that execute in parallel on separate machines in large computer clusters," explained Professor Saurabh Bagchi of Purdue University.   "Due to natural faults in the execution environment there is a high likelihood that some processing element will have an error during the application's execution, resulting in corrupted memory or failed communication between machines. There are bottlenecks in terms of communication and computation."

According to Bagchi, such errors are compounded as long as the simulation continues to run before the glitch is detected, potentially causing processes to stall or crash.


Yet, as noted above, the researchers have developed automated methods to detect a glitch soon after it occurs.



"Streaming data to a central server works fine for a hundred machines, but it can't keep up when you are streaming data from a thousand machines," says Purdue doctoral student Ignacio Laguna, who worked with Lawrence Livermore computer scientists. "We've eliminated this central brain, so we no longer have that bottleneck."


Lawrence Livermore computer scientist Todd Gamblin came up with the scalable clustering approach. A lingering bottleneck in using the simulations is related to a procedure called checkpointing, or periodically storing data to prevent its loss in case a machine or application crashes. The information is saved in a file called a checkpoint and stored in a parallel system distant from the machines on which the application runs.

"The problem is that when you scale up to 10,000 machines, this parallel file system bogs down... It's about 10 times too much activity for the system to handle, and this mismatch will just become worse because we are continuing to create faster and faster computers.

"[Yes], we're beginning to solve the checkpointing problems... It's not completely solved, but we are getting there. The checkpointing bottleneck must be solved in order for researchers to create supercomputers capable of ‘exascale computing,’ or 1,000 quadrillion operations per second. [And that is why this is] the Holy Grail of supercomputing," Bagchi added.