Title: Trilinos Advanced Capabilities, Extensibility and Future Directions

Author: Michael Heroux - Sandia National Laboratory

Michael A. Heroux worked at Cray Research from 1988 to 1998, the last three years as part of Silicon Graphics. During his first five years he developed mathematical libraries for sparse and dense systems of equations on Cray systems. Following this, he worked in the application division, focusing on solution methods for fluid dynamics, oil and gas and structural applications, both for commercial applications such as FIDAP and FLUENT, and for individual customer applications. During his final three years he managed several groups of scientists focused on new application capabilities in science and engineering, and parallel applications. During these years he was also the applications representative on future architecture teams, including the Cray T3E and SV2 systems.

Presently Dr. Heroux is a Distinguished Member of the Technical Staff at Sandia National Laboratories, working on new algorithm development, and robust parallel implementation of solver components for problems of interest to Sandia and the broader scientific and engineering community. He leads development of the Trilinos Project, an effort to provide state of the art solution methods in a state of the art software framework. Trilinos is a 2004 R&D 100 award winning product, freely available as Open Source and actively developed by dozens of researchers. In addition to Trilinos, Dr. Heroux works on the development of scalable parallel scientific and engineering applications and maintains his interest in the interaction of scientific/engineering applications and high performance computer architectures. Dr. Heroux is a telecommuter for Sandia, maintaining an office at home in rural central Minnesota and at St. John's University where he is an adjunct faculty member in the Computer Science Department.


The Trilinos Project is an effort to facilitate the design, development, integration and ongoing support of mathematical software libraries within an object-oriented framework for the solution of large-scale, complex multi-physics engineering and scientific problems. Trilinos addresses two fundamental issues of developing software for these problems: (i) Providing a streamlined process and set of tools for development of new algorithm implementations and (ii) promoting interoperability of independently developed software.

After a brief introduction, this presentation builds on a previous talk (given at ORNL in May 2007) by discussing detailed solver capabilities, techniques for extending capabilities, and future research directions. We specifically focus on solver and preconditioner capabilities, advanced preconditioning techniques, Fortran support and efforts to take advantage of multicore processors.

Finally, we will discuss the expanding scope of Trilinos to include meshing, discretization, load balancing and other capabilities; and briefly present major efforts in the near future of the project.