Scientific Computing
Simulation plays a major role in nearly every area of science and engineering—from data analysis to physical models. Our faculty design, build, and analyze the behavior of numerical algorithms to ensure that numerical methods are accurate and that implementations are efficient.
We design and analyze the accuracy of methods, developing numerical approximations to partial differential equations with advanced finite element methods and integral equations. We also develop solvers for these problems, including techniques based on numerical linear algebra, iterative subspace methods, and multigrid methods. Our research explores the efficiency of these methods on a range of architectures and environments, from high-concurrency nodes, such as GPUs, to large-scale supercomputing systems. We explore parallel scalability and analyze performance in computing kernels from graph algorithms to sparse linear algebra.
Strengths and Impact
The scientific computing group at the University of Illinois has had a long history of research and education in numerical analysis dating to the 1960s and the early years of parallel computing at the University.
Breakthroughs and Collaboration
The group is widely recognized for its deep contributions in the field and as a leader in breakthroughs and advances in the latest methods and algorithms in numerical computing. Scientific computing is home to researchers with established collaborations within the department, from machine learning to theory and algorithms to architecture and parallel computing. Moreover, the faculty in this area have deep collaborations with researchers across The Grainger College of Engineering and campus in a range of scientific domains in the engineering, math, and physical sciences. The group is nationally considered a center for research and education in scientific computing, with highly recognized alumni in national labs, industry, and academia, both in computer science and in mathematics. The research focus of the group is broad in application and follows several themes of research.
Numerical methods for partial differential equations: The group has had extensive impact in advancing numerical computation in this area, foremost in the area of finite element methods. Faculty have led the development of novel approaches in spectral element, discontinuous Galerkin, and least-squares finite element methods. Moreover, the group has been leading the development of new methods and tools for integral equations. The advances in this area are not purely theoretical— researchers in the group have also been adept at applying these schemes on some of the most complex and largest scientific simulations in the world, from fluid flows to solid mechanics.
The group has gained wide recognition for advances in numerical linear algebra, particularly for use in parallel environments. By advancing the state-of-the-art in core numerical linear algebra routines that are used in a variety of scientific codes and establishing new theory and methods in emerging areas such as tensor computations, the research in the group continues to push the edge of innovation in computational mathematics. The group has also gained attention for impact in the area of sparse iterative methods for solving large scale linear systems. Advances in multigrid methods, domain decomposition methods, and other subspace methods are at the forefront of research in this area.
Research in the group has also led to impactful contributions to the MPI standard and supporting tools, developing methods and algorithms to handle communication and heterogeneous computing at scale. In addition, the group has made key contributions in performance modeling and the analysis of parallel scalability. With a focus on methods and algorithms in numerical simulation, the group has a range of software contributions and supporting tools in this area as well. nek5000 is a highly efficient and sc alable library for computational fluid dynamics (led by Fischer); the MPICH implementation of Message Passing Interface (MPI) and the Portable Extensible Toolkit for Scientific Computation (PETSc) have received numerous awards (Gropp); pycuda, pyopencl, loopy, and potentially provide an arc of performant numerical computing in Python (Kloeckner), pyamg, raptor, cedar, and cusp implement a range of multigrid methods on different platforms (Olson), and the Cyclops Tensor Framework (CTS) is gaining attention for high performance tensor computations (Solomonik).
The core faculty in scientific computing continue to work on and lead large projects and centers with national notoriety and impact. These include (1) the National Center for Supercomputing Applications (NCSA) at Illinois, a world renowned center for large scale computing (Gropp, Director); (2) Computational Science and Engineering (CSE) at Illinois, an interdisciplinary program in the Grainger College of Engineering that is advancing interdisciplinary scientific computing and computational science (Olson, Director); (3) the Center for Efficient Exascale Discretizations, a Department of Energy Exascale Computing Project (Fischer, Deputy Director); and (4) the Center for Exascale-enabled Scramjet Design (CEESD), a Department of Energy Predictive Science Academic Alliance Program Centers of Excellence (Gropp, Co-Director; Kloeckner, Olson, executive committee; Fischer, PI).
Seminars
- Illinois Computer Science Speaker Series: brings prominent leaders and experts to campus to share their ideas and promote conversations about important challenges and topics in the discipline.
Faculty & Affiliate Faculty
Parallel Algorithms and Libraries, Parallel Graph Algorithms, Performance Modeling
Computational Inverse Problems, Image Reconstruction, Wave Physics Modeling in Imaging
High-Order Numerical Methods for Partial Differential Equations, Scalable Parallel Algorithms, Iterative Solvers, Parallel Computing, Spectral Element Methods, Computational Fluid Dynamics
High Performance Scientific Computing, Scalable Numerical Algorithms for PDEs, Numerical Software, Performance Analysis
Simulation Software, Numerical Libraries and Algorithms
Many-Task Computing, Parallel and Distributed Computing and workflows, Sustainable and Open Research Software
Integral Equation Methods for PDEs, High-Order Finite Element Methods for Hyperbolic PDEs, Tools and Languages for High-Performance Computing, Time Integration
Extreme-Scale Computing and Analytics, Performance Evaluation, Reliability and Resiliency of Large Scale Systems, Data and Storage Techniques, Performance Variability
Numerical Analysis, Scientific Computing, Large-Scale Simulation, Multigrid and Iterative Methods, Finite Element Methods
Parallel Computing, Compilers, Parallel Libraries, High Performance Computing, Parallel Architecture, Exascale Computing
Large-Scale Parallel Systems, Algorithms, Libraries
Numerical Linear Algebra, Tensor Computations, Parallel Algorithms, Quantum Chemistry, Quantum Simulation