Built for science
April 11, 2016
Video by Ashley Barnas, graphics by Jeffrey Chase
Hackathon prepares coders to tap into the power of Titan
Titan, currently the world’s second largest supercomputer, occupies more than 4,300 square feet of space at Oak Ridge National Laboratory (ORNL) in Tennessee.
The hybrid system combines CPUs (central processing units) and GPUs (graphical processing units) to overcome the power and space limitations inherent in previous generations of high-performance computers.
But Titan’s hardware is only as good as the research that exploits it, and its novel architecture is forcing researchers to rethink their problems and come up with new approaches to their work in areas ranging from nanoscale materials and climate change to next-generation biofuels and nuclear energy technology.
To help developers with scalable applications that need to be ported to GPU accelerators or applications running on accelerators that need optimization, several GPU hackathons have been held at locations across the U.S. and Europe over the past two years.
During the week of May 2, the University of Delaware hosted the first of these events to be held at an academic institution. The hackathon was organized by Sunita Chandresekaran, assistant professor of computer science at UD, in collaboration with Fernanda Foertter, a high-performance computing support specialist and programmer at ORNL.
Members of six teams — three from UD and one each from NASA, Brookhaven National Laboratory and the National Cancer Institute — spent the week hunched over their computers in the Trabant University Center’s Multipurpose Room, grabbing snacks and breaks as needed and then diving back into the task of learning how to program a machine with the power and potential of Titan.
“Migrating legacy code is tough, time consuming, and energy draining,” said Chandresekaran. “However, you cannot afford to NOT be in the game. Architectures are changing rapidly, and the legacy applications have to catch up.”
ORNL’s Foertter, who spent the week as coordinator and mentor-at-large, sat on the back of a chair at mid-week, checking in on a UD team.
“My favorite part is seeing them in the depths of despair on Tuesday night and then again on Friday, when they’ve ‘got it,’” she said. “We get to witness real growth at these events.”
Other mentors from NVIDIA/PGI, the University of Tennessee-Knoxville, Cornell University, ORNL and UD, all with extensive programming experience, were on site to help the teams troubleshoot and figure out a path forward.
The work is aimed at exascale computing systems, which are capable of a billion billion calculations per second. The Department of Energy and the National Nuclear Security Administration plan to develop and deploy exascale technology by 2023.
Hackathons are valuable training events for the exascale computing challenge.
Graduate students participated on the three UD teams, which focused on cybersecurity (led by John Cavazos in the Department of Computer and Information Sciences), catalysis (led by Mike Klein in the UD Energy Institute), and hybrid CPU-GPU implementation (led by Guang Gao in the Department of Electrical and Computer Engineering).
In addition, undergraduate students were invited to observe and ask questions during the hackathon.
The event kicked off with a lecture by Eric Nielsen, a software developer at NASA Langley Research Center, Hampton, Virginia.
NASA’s FUN3D code, he said, is available to U.S. citizens and was recently used by trucking company BMI to make their 18-wheelers more fuel-efficient and less polluting.
Nielson talked about various applications where computation is at play, including crew safety, wind effects on Mars, optimization of rotorcraft lift and flight path, supersonic nozzle design, and distributed electric propulsion.
He emphasized the importance of teamwork across applications — a theme that resounded with both Chandresekaran and Foertter.
“Hackathons foster collaboration and help students to understand how things work outside their cubicles in industrial and government labs,” Chandresekaran said. “This is not just about coding — it’s about brainstorming and teamwork and learning to tap into the power of a supercomputer.”
Foertter added, “We need students to be able to process on the fly and jump into a group environment with a strong mentor. We come across geniuses far along in their fields that don’t have the skillset to frame a question in the coding languages needed for Titan.”
Chandresekaran hopes to hold a mini-OpenACC workshop over the summer to include teams that submitted applications to participate in the hackathon but couldn’t be accommodated due to space and resource limitations.