Download presentation
Presentation is loading. Please wait.
Published byAngela Barnett Modified over 9 years ago
1
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 Front Erik 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. C2C2 C4C4 C3C3 C1C1 C5C5 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.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.