Mike Heroux

February 18, 2009

By Glenda Isaacs Burgeson

To the uninitiated, Mike Heroux manages to be two places at once. To his colleagues and students, he represents the brave new world of computer science.

A scientist-in-residence in the CSB/SJU department of computer science, Heroux divides his time in that department with his other day job as a Distinguished Member of the Technical Staff at Sandia National Laboratories in Albuquerque, N.M. Instead of time traveling, he telecommutes from his home and office in Minnesota, working on projects involving the use of high-performance computing for scientific and engineering purposes.

The two positions complement each other, as he fosters ties between CSB/SJU and the external scientific community. He brings to campus current best practices that are being used in the industry. Student involvement in his award-winning research project at Sandia has ignited the imagination of many who, in turn, are now pursuing or have completed advanced degrees in computer science at a time of national concern over the dearth of such students. He works not only with computer science majors but also with mathematics and physics majors. He fosters inter-departmental research through faculty collaboration.

Presently, along with a student research assistant, Heroux is collaborating on a water quality project with Michael Ross, associate professor of chemistry, and his student researcher. They are developing a virtual East Gemini Lake computer model to mimic chemical breakdowns in the lake.

The project will help them gain insight into potential ways to improve water quality by testing virtual models in addition to experimenting out in the field. For example, they virtually test how the amount of sunlight affects the breakdown of antidepressants in the lake.

"Computational modeling and simulation offers a third basic approach to scientific discovery and understanding, in addition to and in collaboration with scientific theory and experimentation. These three approaches are synergistic, providing qualitatively new opportunities for research," Heroux said.

Heroux works with steady stream of students on a variety of research topics, and he typically sends one or two students to Sandia, either in New Mexico or California, for summer research.

Many of these students are part of a Sandia team that is developing Trilinos, a software project that received a 2004 R&D 100 Award. The award, given annually by R&D Magazine to recognize the "100 most technologically significant products introduced in the past year," is considered by inventors as the equivalent of an Oscar.

Led by Heroux, Trilinos is under development at both Sandia/New Mexico and Sandia/California, and involves 24 researchers. Contributions are also made by researchers, faculty and students from numerous research facilities and universities throughout the world.

"The Trilinos project provides software libraries; they are an enabling technology," Heroux explained. "If you're a scientist or an engineer and you are writing a program that you want to simulate what it is you do - build a bridge or fire a rocket, for example -- at the core of your application is a need to solve systems of equations. Trilinos provides that capability."

The software is free; anyone can download it. Sandia has a large external user community that spans the globe and approximately 1,400 scientists from every continent use this program.

The goal for CSB/SJU students who work with Heroux is to experience what it would be like as graduate students, particularly in computer science. With him, they are able to get a sense of what research is all about.

"It's not as though they are doing every odd problem out of the back of the book," he said. "They have the opportunity to truly define the question. That becomes very attractive to them and they realize that they can do this as a career and join graduate programs.

In addition to research, Heroux teaches the senior research course for computer science majors. "Because that is my life as a scientist at Sandia, I can give students a sense of what the professional world is like in computer science," he said.

He teaches software engineering, which is a big component of his research on the Trilinos project at Sandia. Consequently, he teaches students about the practical aspects of that project.

He also teaches his field of specialty, numerical analysis, again providing the classroom a personal perspective about the field.

"I tell them all sorts of stories about the people they're reading about, because I know these people."

In terms of global competition in engineering, Heroux noted that it is difficult to interest U.S. students in engineering and especially difficult to capture them after graduating from college. Students often get job offers in the beginning of their senior year with incomes that far surpass their parents, he said.

"One of the benefits of my program is that I catch students while they are still in college. Typically, they think they will go join some software company, but I show them a different path they could take."

Mike Heroux
Scientific computing research

Dr Mike Heroux is the Scientist-in-Residence at CSB/SJU. This position enables him to share with us his wealth of knowledge and experience as a world-class scientist in the areas of numerical methods and high-performance computing. Dr. Heroux teaches one course each semester in the computer science department and mentors several CSB/SJU student researchers while also working more full-time for Sandia National Laboratory on projects involving the use of high-performance computing for scientific and engineering purposes. (Sandia National Laboratory is located in Albuquerque, New Mexico, but Prof. Heroux works from his home and office in Minnesota.)

Prof Heroux hires a steady stream of students, usually beginning in the summer before the student's junior year and continuing to graduation. These students work on various research projects, some designed locally by faculty here and some projects directly related to Dr. Heroux's research for Sandia National Laboratory. Some of these research students have had the opportunity to spend a summer internship at the laboratory in Albuquerque, and several students have continued on to graduate school after working with Dr. Heroux.

For his research, Prof Heroux uses three high performance parallel computing clusters and a special purpose quad core machine used especially for parallel programming of its graphics card's GPU's. Two of the parallel clusters run the Linux operating system and the third is a Windows platform. One of the clusters consists of 8 single-CPU nodes, one is a 7 node cluster where each node is a dual-core dual processor box giving this cluster up to 28 processors that can work together to solve a problem and the third is a four node quad core machine. These machines are available for student researchers and are also used by faculty and students as part of upper division coursework. The parallel computing hardware is updated regularly to use current technology.