ALCF summer students gain real-world experience in scientific HPC

science
ALCF summer students
ALCF summer students
ALCF summer students
ALCF summer students

Every summer, the Argonne Leadership Computing Facility (ALCF), a U.S. Department of Energy (DOE) Office of Science User Facility, opens its doors to a new class of student researchers who work alongside staff mentors to tackle research projects that address issues at the forefront of scientific computing.

From exploring big data analysis tools to developing new high-performance computing (HPC) capabilities, many of this year’s interns had the opportunity to gain hands-on experience with some of the most powerful supercomputers in the world at DOE’s Argonne National Laboratory.

“We want our interns to have a rewarding experience, but also to leave with a better understanding of what a National Laboratory is, and what it does for the country,” said ALCF Director Michael Papka. “If we can help them to connect their classroom training to practical, real-world R&D challenges, then we have succeeded.”

This year, the ALCF hosted 39 students ranging from college freshmen to Ph.D. candidates. The students presented their project results to the ALCF community at a series of special symposiums before heading back to their respective universities. Here’s a brief overview of four of the student projects.

Power monitoring for HPC applications

Ivana Marincic, a Ph.D. student in computer science at the University of Chicago, used the ALCF’s Cray XC40 supercomputer Theta to develop a new library that monitors and controls power consumption in large-scale applications.

While tools already exist for basic power profiling, none of them are equipped for profiling applications running on multiple nodes—and ALCF computing resources can have upwards of hundreds of thousands of nodes. Traditional libraries also typically require a certain degree of expertise in the use of such tools, as well as knowledge of a particular system’s power consumption characteristics.

“The HPC community is becoming increasingly aware that the power consumption of their applications matters,” Marincic said. “My tool is designed to enable HPC users of all backgrounds to profile their applications with a few simple lines of code while also providing more options to advanced users.”

Marincic’s library, called PoLiMEr, for Power Limiting and Monitoring of Energy, exploits the power monitoring and capping capabilities on Cray/Intel systems and provides users with detailed insights into their application’s power consumption.

The library also enables users to control the power consumption of their application at runtime via power limiting. Using PoLiMEr, Marincic was able to apply a stringent power cap to memory-intensive applications, thereby saving overall power consumption without any performance losses. She will present a paper on her findings at the Energy Efficient Supercomputing (E2SC) Workshop at SC17, the International Conference for High-Performance Computing, Networking, Storage and Analysis.

For Marincic, collaboration with her ALCF mentor, computer scientist Venkat Vishwanath and members of ALCF’s Operations and Science teams, proved critical to a successful research project.

“Without this environment that fosters collaboration, inquisitiveness and helping others, I wouldn’t have been able to achieve what I did in these three months,” Marincic said.

Automated email text analysis

ALCF’s technical support team handles thousands of emails every year from users seeking assistance with computing resources, user accounts, and other issues related to their ALCF projects.

To help staff gain insights from this vast amount of email, Patrick Cunningham, a junior studying computer science at Purdue University, spent his summer developing a system that can rapidly analyze email text for keywords and phrases.

Cunningham began his project by researching relevant journal articles and investigating various machine learning and natural language processing tools and techniques. He then used Python, the Natural Language Toolkit, and the Stanford Named Entity Recognizer to build a system that is capable of email processing, tagging, keyword identification, and scoring.

“This system lays the foundation for more advanced text analysis tools and projects,” he said. “For example, it could be possible to use the system to link relevant emails together to help identify solutions to support ticket questions more quickly.”

During the course of his three-month project, Cunningham used the system to process more than 130,000 emails from the support ticket database to extract all possible words, phrases, and concepts. The data generated by his system will feed into software that allows staff to find support emails that are the most relevant to their search phrases.

“The idea behind this project was to come up with a tool that can respond to commands like ‘give me a list of all emails that mention FFTW library in the past 90 days,’” said Doug Waldron, ALCF senior data architect and Cunningham’s summer mentor. “Later this year, we plan to have software in place so that we can take advantage of the system Patrick developed.”

Developing a scalable framework using FPGAs

With the potential to provide higher performance than today’s HPC processors (CPUs and GPUs) using less power, field-programmable gate arrays (FPGAs) are a promising technology for future supercomputers. But FPGAs have yet to gain much traction in HPC because they are notoriously difficult to program.

“FPGAs represent a paradigm shift in mainstream high-performance computing that addresses three of the most important challenges on the roadmap to exascale computing: resource utilization, power consumption and communication,” said Ahmed Sanaullah, a Ph.D. student at Boston University. “The icing on the cake is that FPGAs are commercial off-the-shelf devices. Anyone can create their own clusters using FPGAs, and they scale much better than GPUs.”

Sanaullah partnered with a summer intern working in Argonne’s Mathematics and Computer Science (MCS) Division, Chen Yang, also a student at Boston University, to develop a robust and scalable FPGA framework for accelerating HPC applications.

Over the course of the summer, Sanaullah and Yang created an FPGA chip, called TRIP (TeraOps/s Reconfigurable Inference Processor). The team evaluated TRIP’s performance using the massive datasets generated from the deep neural network code CANDLE (CANcer Distributed Learning Environment), now being developed at Argonne as part of DOE’s Exascale Computing Project, a collaborative effort of the DOE Office of Science and the National Nuclear Security Administration.

“This experience gave me a lot of insight into HPC workloads and deep neural networks,” Sanaullah said. “Moving forward, I hope to incorporate this into my future projects, including my dissertation, so that my work can contribute to HPC architectures and applications in a significant and meaningful way.”

Sanaullah and Yang will present the results of this work this November at SC17. Their project was a collaborative effort between Argonne and Boston University’s Computer Architecture and Automated Design Lab. Sanaullah was mentored by ALCF computational scientist Yuri Alexeev. Chang was mentored by Kazutomu Yoshii, an MCS software development specialist.

Exploring big data visualization tools

Three undergraduates from Northern Illinois University—Myrline Sylveus, May-Myo Khine, and Marium Yousuf—teamed up to explore the possibilities of using Apache Spark, an open-source big data processing framework, for in situ (i.e., real-time) data analysis and visualization.

“With our project, we wanted to demonstrate the value of in situ analysis,” Sylveus said. “This approach allows researchers to gain insights more quickly by analyzing and visualizing data during large simulation runs.”

The team focused on defining a workflow for in situ processing of images using a combination of PySpark, the Spark Python API (application programming interface), and Jupyter Notebooks, an open-source web application for creating and sharing documents that contain live code, equations, and visualizations. They ran the Apache Spark framework on Sage, a Cray Urika-GX system housed in Argonne’s Joint Laboratory for System Evaluation.

“Hopefully, our findings will help researchers who plan to use Apache Spark in the future by providing guidance on which resources, modules, and techniques work effectively,” Khine said.

The students’ work also provided some insights that will benefit ALCF’s visualization team as they continue to explore Apache Spark as a potential in situ analysis tool for the ALCF user community.

“This summer project helped us to understand the streaming library component of Apache Spark that connects to live simulation codes,” said ALCF computer scientist Silvio Rizzi, who mentored the students along with Joseph Insley, the ALCF's visualization team lead.

After spending their summer at the ALCF, the three students were inspired by their opportunity to work at one of the nation’s leading institutions for scientific and engineering research.

“I am more encouraged and motivated to continue reaching toward my goal of becoming part of the research field,” Yousuf said.

2017 ALCF Summer Students

Daniel Baker
Education: BS 2018, Computer Science, Northern Illinois University
Mentors: Bill Allcock and Ye Luo
Project: Drive QMCPACK on RAN

Bennett Bernardoni
Education: BS 2019, Computer Science, University of Illinois at Urbana-Champaign
Mentors: Joe Insley and Silvio Rizzi
Project: Utilizing a Remote RAM Pool to Improve In Situ Processing

Patrick Cunningham
Education: BS 2018, Computer Science w/ Security Emphasis, Purdue University
Mentor: Doug Waldron
Project: Automated Email Text Analysis, Phrase Searching, and Scoring Utilizing Machine Learning

Bryan Dinh
Education: MS 2018, Computer Science, California State University, Northridge
Mentor: Ying Li
Project: Predictions of Materials Properties for Lithium-Sulfur Solids Using Machine Learning from DFT Calculations

Yuping Fan
Education: PhD 2021, Computer Science, Illinois Institute of Technology
Mentor: Paul Rich
Project: Integrate RAN Technology into Machine Learning and/or Genomics: Data Analysis for Deep Learning

Tommy Franczak
Education: BS 2018, Computer Science, Northern Illinois University
Mentors: Thomas Marrinan and Michael Papka
Project: Educational Methods for Teaching Parallel and Distributed Computing

Samuel Furr
Education: BS 2020, Computer Science w/Data Science Concentration, Illinois Institute of Technology
Mentor: Janet Jaseckas
Project: Spreadsheets to Databases - The Path to Data Integrity

Madeline Galbraith
Education: BS 2018, Physics & Computer Science, Duquesne University
Mentors: Anouar Benali and Hyeondeok Shin
Project: Towards Full Configuration Interaction with Quantum Monte Carlo

Neil Getty
Education: PhD 2021, Computer Science, Illinois Institute of Technology
Mentors: Bill Allcock and Fangfang Xia
Project: Integrating RAN with Protein Function Classification Using Machine Learning

Paul Gressier
Education: MS 2018, Engineering Sciences, ENSEIRB-MATMECA
Mentor: Venkat Vishwanath
Project: Optimizing Data Movement with Data Transformation

Varshini Guddanti
Education: MS 2017, Computer Science, Northern Illinois University
Mentors: Nicola Ferrier and Tom Uram
Project: Electron Microscopic Image Segmentation using Deep Learning

Daniel Hinojosa
Education: BS 2019, Physical Sciences, University of Texas at San Antonio
Mentor: Yasaman Ghadar
Project: Real-Time Graph Analysis in Molecular Dynamics Simulation

Brian Homerding
Education: MS 2017, Computer Science, Northern Illinois University
Mentor: Hal Finkel
Project: Utilizing Proxy Applications to Inform Exascale Computing Development

Brian Howe
Education: BS 2017, Computer Science, University of Illinois at Chicago
Mentor: Yuri Alekseev
Project: Designing an Alexa App for ALCF Tours

Iris Johnson
Education: BS 2020, Electrical Engineering w/Computer Engineering Emphasis, Northern Illinois University
Mentor: Hal Finkel
Project: Exploring FPGA Acceleration using High-Level Tools

Bharat Kale
Education: MS 2017, Computer Science, Northern Illinois University
Mentor: Michael E. Papka
Project: Visualization of Large Diverse Collections of Scholarly Output

May-Myo Khine
Education: BS 2019, Computer Science, Northern Illinois University
Mentors: Joe Insley and Silvio Rizzi
Project: Exploring Big Data Visualization Using Apache Spark

Anna Kim
Education: BS 2019, Computer Science & Mathematics, The University of Chicago
Mentor: Hal Finkel
Project: Proxy Scientific Applications for the Future of Supercomputing

Pavan Kondamudi
Education: MS 2018, Computer Science, Northern Illinois University
Mentor: Hal Finkel
Project: Proxy Scientific Applications for the Future of Supercomputing

Bhavya Kumaran
Education: BE 2019, Computer Engineering, Case Western Reserve University
Mentor: Kevin Harms
Project: Test Harness (Front-End)

Boyang Li
Education: PhD 2019, Computer Science, Illinois Institute of Technology
Mentor: Paul Rich
Project: Integrate RAN Technology into Machine Learning and/or Genomics: Data Analysis for Deep Learning

Sibo Li
Education: MS 2017, Mechanical Engineering, University of Illinois at Chicago
Mentor: Roberto Paoli
Project: Testing Open-Source CFD Codes for Aeronautical Applications

Ivana Marcinic
Education: PhD 2021, Computer Science, The University of Chicago
Mentor: Venkat Vishwanath
Project: Power Monitoring and Control for Large-Scale HPC Applications on Theta

Isaac Nealey
Education: BA 2018, Interdisciplinary Computing and the Arts, University of California, San Diego
Mentors: Joe Insley and Silvio Rizzi
Project: Wireless Remote Integration for vl3 on the Multi-Tile Display

Asare Nkansah
Education: BS 2019, Computer Science, University of Kentucky
Mentors: Thomas Marrinan and Michael Papka
Project: Investigating the Performance Impact of Communication Patterns and Hybrid Parallelization

Akhil Patlolla
Education: MS 2018, Computer Science, Northern Illinois University
Mentor: Hal Finkel
Project: Proxy Scientific Application for the Future of Exascale Computing

Bradley Protano
Education: BS 2018, Computer Science, Northern Illinois University
Mentors: Bill Allcock and Ye Luo
Project: Scalable Implementation of Parallel Checkpoint-Restart in QMCPACK

Peixin Qiao
Education: PhD 2021, Computer Science, Illinois Institute of Technology
Mentors: Bill Allcock and Brian Toonen
Project: Accessing Non-contiguous Data Structures via RAM Area Network (RAN)

Maya Ramamurthy
Education: BS 2019, Chemical Engineering, University of California–Berkeley
Mentor: Tijana Rajh
Project: Developing Gold Nanoparticle Colloidosomes Using Microfluidic Devices

Matt Rycraft
Education: BS 2019, Computer Science w/Software Development Emphasis Northern Illinois University
Mentors: Tommy Marrinan and Michael Papka
Project: Real-Time Natural User Interaction with Supercomputer Simulations

Venkata Sai Sriram Pillutla
Education: MS 2017, Computer Science, Northern Illinois University
Mentors: Bill Allcock and Fangfang Xia
Project: Integrating RAN Technology into Genomics: Predicting Gene Locations from Genomic Sequences using Deep Learning

Jack Salazar
Education: BS 2020, Informatics, Indiana University
Mentor: Beth Cerny
Project: Animations for General Audiences

Ahmed Sanaullah
Education: PhD 2020, Computer Engineering, Boston University
Mentors: Yuri Alekseev and Hal Finkel
Project: TRIP: An Ultra-Low Latency, TeraOps/s Reconfigurable Inference Processor for Multi-Layer Perceptrons

Hashim Sharif
Education: PhD 2019, Computer Science, University of Illinois at Urbana-Champaign
Mentor: Hal Finkel
Project: An OpenMP Runtime for UVM-Capable GPUs

Myrline Sylveus
Education: BS 2018, Computer Science, Northern Illinois University
Mentors: Joe Insley and Silvio Rizzi
Project: Exploring Big Data Visualization Using Apache Spark

Snow Xu
Education: BA 2019, Art & Technology Studies, School of the Art Institute of Chicago
Mentors: Joe Insley and Silvio Rizzi
Project: Towards Immersive 3D Data Visualization

Marium Yousuf
Education: BS 2017 Mathematical Sciences w/Applied Math Emphasis & Computer Science, Northern Illinois University
Mentors: Joe Insley and Silvio Rizzi
Project: Exploring Big Data Visualization Using Apache Spark

Amber Yuan
Education: PhD 2021, Mathematics, University of Minnesota
Mentors: Bill Allcock and Fangfang Xia
Project: Using Machine Learning Techniques to Generate DNA/Amino Acid Sequences

Ning Zhang
Education: PhD 2021, Computer Science, Illinois Institute of Technology
Mentor: Bill Allcock
Project: Memory Performance Modeling in RAN (RAM Area Network) System

Argonne National Laboratory seeks solutions to pressing national problems in science and technology. The nation's first national laboratory, Argonne conducts leading-edge basic and applied scientific research in virtually every scientific discipline. Argonne researchers work closely with researchers from hundreds of companies, universities, and federal, state and municipal agencies to help them solve their specific problems, advance America's scientific leadership and prepare the nation for a better future. With employees from more than 60 nations, Argonne is managed by UChicago Argonne, LLC for the U.S. Department of Energy's Office of Science.

The U.S. Department of Energy's Office of Science is the single largest supporter of basic research in the physical sciences in the United States and is working to address some of the most pressing challenges of our time. For more information, visit the Office of Science website.