November 09, 2020 - by Sarah Waldrip
Although CSCS staff and representatives from their industry partner NVIDIA hosted EuroHack20 online this year due to travel restrictions caused by the COVID-19 pandemic, participants were still able to access the state-of-the-art high-performance computing (HPC) resources at CSCS to run their codes and measure performance. NVIDIA also moderated and managed the virtual communication platforms, assisted teams throughout the event, and participated in a Q&A session to answer technical questions.
The nine teams that participated in EuroHack20 consisted of 54 scientists representing 12 European research institutions and initiatives. Their research disciplines included climate modeling, electrophysiology, relativistic astrophysics, large eddy atmospheric flows, and density functional theory, among others. Of the participants, only about half said they were familiar with GPU programming at the start of the event, while the remainder were introduced to GPU programming for the first time during the event.
Mentor matching is key to success
Mentors were matched with teams based on their relative areas of expertise and HPC experience. After pairing, they are usually given about a week to prepare for EuroHack, but this year they were introduced virtually two weeks before the event so they could adjust to the challenges of an online format while getting to know each other. They also had to make sure they were prepared with a deep understanding of their codes beforehand and a clear set of goals for the week-long event. NVIDIA also provided materials in advance to help participants refresh their knowledge on topics such as how to profile and compile their codes.
“We match research teams with mentors who have proficient expertise in GPU programming to help them gain knowledge and confidence with GPU programming skills without getting into scientific debates on methodology for the discipline,” explains Izumi Baker, director of PR for the OpenACC organization and program manager at NVIDIA. "The researchers know their discipline and their code; the programming experts help them to develop the skills and strategies needed to port, accelerate or optimize that code for better, faster simulation times and open them up to new approaches for how to make their codes better.”
Mentor Will Sawyer, a lead computational scientist at CSCS with 28 years of HPC experience and a climate science background, was paired with team ARTisans, a group of researchers from The Swiss Federal Laboratories for Materials Science and Technology (Empa) and the Karlsruhe Institute of Technology (KIT) that already has allocated time on CSCS’s “Piz Daint”. Sawyer was the lead organizer for EuroHack until 2018 and has mentored hackathon participants for many years prior. “We have many users at CSCS who are not fully exploiting the GPU architecture,” Sawyer points out. “So, it’s obvious that we want to approach them and encourage them to make an effort to port their codes. The hackathon is one of the things we can offer to help them do that.”
The teams have successfully ported their sample codes to GPUs
Team ARTisans has been developing new extensions to the ICON atmospheric model, successor to COSMO. ICON-ART, as it is known, would incorporate aerosol particle formation and other atmospheric chemistry calculations, but it needs to be ported to GPUs to make better use of the team’s allocated computing time at CSCS.
“Doing atmospheric chemistry is very expensive,” explains team member Dominik Brunner, a group leader in the atmospheric science and technology division at Empa since 2006. “The extension to a weather model to simulate atmospheric chemistry is quite large, and there are a lot of components that need to be ported.”
By the end of EuroHack20, the team had successfully ported their sample codes to GPUs, familiarized themselves with OpenACC syntax, and achieved a 2x speedup compared to the OpenMP-parallelised CPU version. Though there is still a lot of work to do in order to port the entire model, the team was able to take full advantage of the expertise and experience provided by their mentor to build a strategy for continuing the work.
“That’s exactly what we hoped to achieve — not to port the whole code, but to give the team the tools they need to do it themselves afterwards,” Sawyer says. “After a day or two of GPU programming, the team members realised that this wasn’t so difficult, and that they could do it on their own.”
Investing in the future of HPC research
Mozhgan Kabiri Chimeh, GPU developer advocate for NVIDIA since January 2020 and moderator for EuroHack20, emphasized the importance of hackathons for the future of scientific research and computing. “It is especially important that the teams made progress in many ways, not just in the speed-up of their code,” Chimeh says. “It’s also about how much they learned and the plan that they have when they leave the event, that they know what to do next.”
Barker, Chimeh’s NVIDIA colleague, agrees. “We’ve seen a transition to where a domain expert has also now had to become a computational scientist in order to run their simulations, do their experiments, and push their research forward,” Barker says. “We are hoping to address some of those skills gaps and introduce methodologies that will ultimately help them accelerate science.”
Brunner and team ARTisans now have not only a clear understanding of what needs to be done in order to advance their atmospheric model, but also of how GPU architectures can be beneficial to future projects. “I would absolutely recommend this event to others,” Brunner says. “I was intimidated at first, but I think I now have a much better understanding of what it is, and I found it to be a very good format for learning these things in a very efficient way.”
For more details about EuroHack20, visit the event page >