combinatorial algorithms enabling computational science: tales from the front
DESCRIPTION
C 2. C 4. C 1. C 3. C 5. Combinatorial Algorithms Enabling Computational Science: Tales from the Front Erik Boman, Karen Devine and Bruce Hendrickson, Sandia National Laboratories Sanjukta Bhowmick, Paul Hovland and Todd Munson, Argonne National Laboratory - PowerPoint PPT PresentationTRANSCRIPT
Combinatorial Scientific Computing is concerned with the development, analysis and utilization of discrete algorithms in scientific and engineering
applications. Graph and geometric algorithms are the fundamental tools of combinatorial scientific computing. They play a crucial enabling role in
numerous areas, including sparse matrix computation, partitioning for parallelization, mesh
generation, and automatic differentiation. Here we report on some recent developments in this highly
interdisciplinary and rapidly evolving field.
Combinatorial Algorithms Enabling Computational Science: Tales from the FrontErik Boman, Karen Devine and Bruce Hendrickson, Sandia National Laboratories
Sanjukta Bhowmick, Paul Hovland and Todd Munson, Argonne National Laboratory
Assefaw Gebremedhin and Alex Pothen, Old Dominion University
Hypergraph partitioning is superior to graph partitioning for parallel decompositions as it more accurately models communication cost. A parallel hypergraph partitioner has recently been developed as part of Sandia’s Zoltan toolkit for petascale computing. The new partitioner generates decompositions that improve the performance of numerical operations for a wide variety of parallel applications.
C2 C4
C3C1C5
Xyce MatVec MFLOPS
0
500
1000
1500
2000
2500
3000
Liberty (64 procs)
MFLOPS
Linear
ParMetis
Hypergraph
Assorted variants of graph coloring are key tools for reducing the work required to compute derivative matrices using automatic differentiation. For example, the number of function evaluations needed to compute a sparse Jacobian can be reduced by finding structurally orthogonal sets of columns, a problem that can be phrased as a distance-two coloring of the column vertices of the bipartite graph. Researchers at Old Dominion University have developed algorithms for this and other coloring problems. Scalable parallel versions have been developed for the distance-two and distance-one coloring variants.
Modern microprocessors are highly sensitive to the spatial and temporal locality of data. Reordering the vertices and elements in a mesh can have a significant impact on performance. Researchers at Argonne have developed several reordering algorithms that use the hypergraph representation of a matrix. These algorithms can improve the performance of a mesh smoothing application by nearly 50%. The left image shows the nonzero pattern for the original Hessian matrix, and the right image shows the reordered version.
Exploiting symmetry in a Hessian computation can reduce the computational cost by almost 50%. Researchers at Argonne have developed a polynomial time algorithm for detecting symmetry in a computation described by a directed acyclic graph (DAG) (detecting symmetry in general graphs is NP-hard). Symmetry in a DAG is defined as finding a dual for every vertex such that for each vertex v and its dual v’, the successors of v are the dual of the predecessors of v’. At bottom, is the symmetric graph for a mesh smoothing application.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a LockheedMartin Company, for the United States Department of Energy’s National Nuclear Security Administration under contract DE-AC04-94AL85000. The work at Argonne was
supported by the Mathematical, Information, and Computational Sciences Division subprogram of the Office of Advanced Scientific Computing Research, U.S. Department of Energy under Contract W-31-109-Eng-38.