An HPC Partnership: Harvey Mudd College and Livermore
For the past nine months, a team of four undergraduate students from Harvey Mudd College (HMC) have worked with Lawrence Livermore computer scientists to expand the functionality of the Conduit library, a new C++ library designed to help describe, access, and share scientific data in memory between applications, and to evaluate its usefulness in high performance computing (HPC) applications. The project was part of HMC’s Clinic program, which functions as a senior Capstone project for those pursuing a bachelor of arts in computer science.
At a recent concluding presentation given by the students at Livermore, the team expressed a general feeling that the exposure to national laboratory research enabled by this project gave the students a window to see career possibilities they had not seen before. “One of the primary goals of HMC’s Clinic program is to expose students to different types of projects,” says Linnea Shin, a student who developed an input/output (I/O) library, used to save the simulation state to a disk. “We are given the opportunity to see different computer science fields and organizations at the professional level.”
The team collectively devoted 40 hours a week to the project. Each student researched a specific aspect of Conduit development, resulting in four primary deliverables: a benchmarking library to capture program performance data in LULESH (a proxy application that represents some of the structure of LLNL’s larger physics simulation codes); a pan-able, zoom-able, and collapsible tree-view visualizer to view Conduit nodes; an I/O library for Conduit objects to work with Silo (a library for reading and writing scientific data to binary disk files) that simplifies Silo workflows by using Conduit objects; and a Conduit message passing interface (MPI) library, which allows for the user to use MPI on arbitrary Conduit nodes. These deliverables will be accessible for internal use as part of Livermore’s Conduit library and will, in the future, be made available as part of an open-source version of Conduit.
Though there were many projects for the team to choose from, the immediate usability and applicability of this work attracted the team’s participation. “I felt like it was something practical,” explains Shin. “I was interested in a project that would create something useful.” The team also appreciated the specific expectations laid out by the mentors. “We knew what we had to do,” says Rupert Deese, the team’s project manager who developed the tree-view visualizer. “The project’s detailed direction resulted in a higher level of satisfaction for our team as a whole.”
The project was proposed and led by three sponsoring liaisons at Lawrence Livermore, Cyrus Harrison, Brian Ryujin, and Adam Kunen. All three mentors are computer scientists in the Applications, Simulations, and Quality division of Weapons and Complex Integration. “The students completed exceptional technical HPC work,” says Harrison, “but I was also impressed with their ability to present their work. The Clinic program exposed them to a broad set of skills beyond programming and because of this they all grew into well-rounded team members.”
In light of the success of this year’s program at Livermore, the liaisons look forward to sponsoring another group of HMC students in the Clinic program next year. Though the project will be different, explains Harrison, the end goal will be the same: to improve simulation software workflow for Livermore scientists and in parallel, to provide the student team with a hands-on experience at the Laboratory.
“Working with Lawrence Livermore has encouraged me to strongly consider a career where I can do as much HPC as possible,” says George Aspesi, who developed the Conduit MPI library. “It has been a fantastic learning experience, and I would like to explore the field more in the future.”