Skip to main content

Meet Your Mentor!

We sat down with our 2022 Anvil REU Mentors to discuss their role at RCAC, what their REU students will be working on, and much, much more. Keep reading below to learn more about your mentor.

 

Christopher Thompson

Christopher Thompson

Please introduce yourself:

My name is Christopher Thompson and I’m a software engineer in the Scientific Solutions Group inside Purdue’s research computing department, RCAC.  We serve as a bridge for professors and researchers to help guide them to using the university’s computing resources like the Anvil cluster.  The SSG team specializes in long-term partnerships with the faculty to help them build systems that bring their work to whole new audiences of users.  Many of our projects are helping professors integrate research models into education by creating user-friendly interfaces so they won’t have to waste weeks of valuable class time training students how to run the models.

I was a computer science major here in West Lafayette many years ago and worked in the industry for a while before returning to campus IT as an employee a little over a decade ago.  I’ve always loved computers since playing with an old Atari 800 my uncle left behind at my grandparent’s house.  Many people hear “Atari” and only think of arcade games, but they also made some of the earliest home computers that you plugged into a TV because monitors didn’t exist yet.  I would run inside during my breaks from mowing their yard or helping at the family mechanic shop next door to try and fail at writing my own games in BASIC.  I’m so grateful now, thirty years later as a successful developer in many languages, that my stubbornness and spite only pushed me further instead of throwing in the towel.

The biggest surprise for me to working within RCAC was seeing just how far our reach extends into every corner of the university.  Research computing has become vital in nearly every field of academics, and it’s exciting getting to discover whole new areas of collaborators.  Being attached to a project in another new discipline means getting a peek into a whole area of study about which I would have otherwise never known anything.  That reach extends beyond just Purdue, as well.  I’ve had many opportunities to work with researchers and faculty at institutions all over the country.  Part of the mission of the Anvil cluster continues this by bringing in users from dozens of other universities through the ACCESS program, a network of NSF-funded computing resources all over the country.

 

Why did you decide to become a mentor for the REU program?

I’ve had the opportunity through RCAC to work with lots of researchers from lots of sciences and institutions.  Many of them are involved with large NSF-funded programs building communities within their specific fields of expertise, and many of those communities have REU programs.  Having seen the impact of an REU on those students, I was excited to learn RCAC would be hosting our own program for some of the projects happening on the Anvil cluster.

 

What value does the REU program provide for students?

An REU program gives students a unique experience to see their future field from the inside.  An REU program in research computing gives students a chance to see many aspects of what is involved with maintaining and growing a computing platform like Anvil, and to see from the other side how the mission to support our community of academic users is handled.  Many students may have used the computing clusters as part of a research project with a professor, but that window into this world is going to be limited by the bounds of what their professor is trying to accomplish.  REU participants have a chance to see the full range of services that research computing supports and to see a much larger picture of all the ways in which faculty are making use of them.  Participation in the REU program has the chance to shake up the student’s entire perspective on what is research computing and what being involved with it can mean for them.

 

What value do you get from being a mentor for the REU program?

RCAC has a rich history of employing undergraduate and graduate students throughout our various teams as part-time employees throughout the academic year and has had great success with the fresh perspectives and excitement they bring to our work.  An REU program could be a great new way to engage with student workers by gaining access to their talents as full-time employees for the summer.  It’s exciting to see what kind of collaboration will be possible with full-time efforts and how it will enable a deeper connection to our projects.

The IT field still moves at a lightning pace, and each new cohort of students is practically like a new generation of professionals.  We are constantly having to stay on top of emerging technologies, and keeping a vibrant connection to the student populace helps us to inject new outlooks on the changing tech landscape into our department.  We value the input of student employees on our work, and an ever-changing stream of fresh perspectives from students like those applying to the REU program is one way we can find new directions to explore.

 

What will your REU students be working on specifically?

Over the past few years, Python has swept through the research world as one of the preferred methods of analyzing datasets throughout the full range of sciences.  Along with that rise has also come the popularity of Jupyter notebooks to capture analysis workflows in repeatable, documented ways.  Jupyter also helps professors and other instructors to get students quickly up-to-speed with guided, hands-on experience.

A hurdle for many and a large drain on valuable training time is just the act of overseeing each student installing and learning how to maintain an environment like Jupyter on their own personal computers.  JupyterHub solves this by allowing instructors to run a single web server that will host a separate copy of Jupyter for each student in their class, all accessible through a simple web browser.  While it is relatively easy to run JupyterHub for computing experts like those of us in RCAC, it can still be difficult for many instructors who don’t know or care to know the details of server deployments.

The goal of this REU project is to extend an existing method of launching JupyterHub that RCAC has for Anvil to add new features for customizing it to each class that wants to use it.  We hope by the end of the REU program to have a system in place where an instructor can spend a couple of minutes creating a new JupyterHub for their class that automatically preloads course materials into each student’s workspace, allows the instructor to alter the appearance to suit their class, integrates with a central credentials provider so that students can use their existing campus IDs to login instead of being assigned something generic like “student001,” and possibly other needed features we uncover along the way.

Our REU students will get experience working on the coding, configuration, and deployment of such a system, as well as an opportunity to provide valuable input into the choices we make along the way.

 

Why HPC?

High-Performance Computing has opened whole new worlds of research in nearly every field of science.  Being able to simulate experiments efficiently and quickly with the power of huge clusters of computers allows researchers to explore hundreds of variations of a theory and sweep through whole ranges of possibilities that would not be viable to explore any other way.  Nearly every scientific discipline has had its eyes opened to the value of HPC in recent years, and that will only continue as they dig deeper into what it can do for them.  It is an exciting time to be in research computing with all the faculty who are exploring the use of large models and computing clusters like Anvil for the first time.  Even scientific domains that were early to adopt HPC like climate modeling are finding new ways to expand the scale and complexity of their simulations each time the technology advances.  There will continue to be new challenges to solve in HPC for long into the future.

 

Why RCAC/Purdue?

Purdue has a strong technical program with its renowned reputation for engineering and its history as the very first university to create a computer science program.  Purdue’s research computing department is renowned throughout the academic community due to our participation in many respected, national programs and through the innovative reputation Purdue has built within the world of academic computing clusters.  Collaborating with Purdue’s research computing department is also a great way to get exposure to many new corners of the university.  RCAC proactively reaches out to faculty and departments to find new research projects to fold into our community of users.  It’s always exciting seeing who next will find a home for their research on one of our clusters like Anvil.

 

Where do you see HPC going in the next 10 years?

Already we are seeing some simulations that are being fed massive datasets collected by wide networks of distributed sensors deployed into the field with periodic batches of newly created data.  The future will only accelerate this until it becomes relatively commonplace in some scientific domains to see permanently deployed models always sampling real-time or near real-time data from these sensor networks.  Research computing will need to be prepared to support more of these “permanent” models that are always running and consuming resources with no downtime for the life of the cluster.

This will also enable new “products” generated from these always-fresh datasets like monitoring dashboards that go beyond just campus users.  Imagine a world where a research computing cluster like Anvil is always dedicating a few nodes to analyzing real-time data from air quality sensors spread throughout the Pacific Northwest reporting back to Anvil via the cellular network.  In addition to gathering that data for the usual researchers doing the usual historical trend analysis or long-term prediction modeling, it could also be piped at the same time into an early warning system for wildfires developed for a whole new class of cluster users, decision-makers like government and emergency officials, who have no idea that their data is flowing through a university research cluster.  NSF already funds projects with goals like this.  There already exists a system that monitors water levels in coastal regions multiple times a day and updates predictions of storm surges that are used to help plan possible evacuations along the US southern coasts.  Research computing has the potential in the near future to expand from supporting just traditional researchers into these realms as the complexity and granularity of these real-time sensor network projects grow.

Closer to home, the wide-scale adoption of “containers” like those used in this REU project give administrators the ability to safely grant researchers greater control over running exactly what they want on shared clusters without sacrificing the security or stability of the cluster for others.  Users can prep their own executables with much fewer restrictions than in the past, and administrators can deploy them with minimal oversight or intervention.  They also allow researchers to easily share complex workflows with colleagues to recreate their exact computation setup used for their publications, enabling bit-for-bit repeatable experiments regardless of the computing resource where they are executed, a long-sought Holy Grail of research computing.  As the usage of containers in research spreads even further, it could fuel new waves of users to our shores and new oceans of follow-on computational research based on previously published simulations.