Results 1 - 10
of
13
What color is your Jacobian? Graph coloring for computing derivatives
- SIAM REV
, 2005
"... Graph coloring has been employed since the 1980s to efficiently compute sparse Jacobian and Hessian matrices using either finite differences or automatic differentiation. Several coloring problems occur in this context, depending on whether the matrix is a Jacobian or a Hessian, and on the specific ..."
Abstract
-
Cited by 36 (7 self)
- Add to MetaCart
Graph coloring has been employed since the 1980s to efficiently compute sparse Jacobian and Hessian matrices using either finite differences or automatic differentiation. Several coloring problems occur in this context, depending on whether the matrix is a Jacobian or a Hessian, and on the specifics of the computational techniques employed. We consider eight variant vertexcoloring problems here. This article begins with a gentle introduction to the problem of computing a sparse Jacobian, followed by an overview of the historical development of the research area. Then we present a unifying framework for the graph models of the variant matrixestimation problems. The framework is based upon the viewpoint that a partition of a matrixinto structurally orthogonal groups of columns corresponds to distance-2 coloring an appropriate graph representation. The unified framework helps integrate earlier work and leads to fresh insights; enables the design of more efficient algorithms for many problems; leads to new algorithms for others; and eases the task of building graph models for new problems. We report computational results on two of the coloring problems to support our claims. Most of the methods for these problems treat a column or a row of a matrixas an atomic entity, and partition the columns or rows (or both). A brief review of methods that do not fit these criteria is provided. We also discuss results in discrete mathematics and theoretical computer science that intersect with the topics considered here.
Scalable Parallel Graph Coloring Algorithms
, 2000
"... Finding a good graph coloring quickly is often a crucial phase in the development of efficient, parallel algorithms for many scientific and engineering applications. In this paper we consider the problem of solving the graph coloring problem itself in parallel. We present a simple and fast paral ..."
Abstract
-
Cited by 19 (7 self)
- Add to MetaCart
Finding a good graph coloring quickly is often a crucial phase in the development of efficient, parallel algorithms for many scientific and engineering applications. In this paper we consider the problem of solving the graph coloring problem itself in parallel. We present a simple and fast parallel graph coloring heuristic that is well suited for shared memory programming and yields an almost linear speedup on the PRAM model. We also present a second heuristic that improves on the number of colors used. The heuristics have been implemented using OpenMP. Experiments conducted on an SGI Cray Origin 2000 super computer using very large graphs from finite element methods and eigenvalue computations validate the theoretical run-time analysis.
A Parallel Algorithm For Computing The Extremal Eigenvalues Of Very Large Sparse Matrices
- Lecture Notes in Computer Science
, 1998
"... . Quantum mechanics often give rise to problems where one needs to find a few eigenvalues of very large sparse matrices. The size of the matrices is such that it is not possible to store them in main memory but instead they must be generated on the fly. In this paper the method of coordinate relaxat ..."
Abstract
-
Cited by 12 (3 self)
- Add to MetaCart
. Quantum mechanics often give rise to problems where one needs to find a few eigenvalues of very large sparse matrices. The size of the matrices is such that it is not possible to store them in main memory but instead they must be generated on the fly. In this paper the method of coordinate relaxation is applied to one class of such problems. A parallel algorithm based on graph coloring is proposed. Experimental results on a Cray Origin 2000 computer show that the algorithm converges fast ant that it also scales well as more processors are applied. Comparisons show that the convergence of the presented algorithm is much faster on the given test problems than using ARPACK [10]. Key words. sparse matrix algorithms, eigenvalue computation, parallel computing, graph coloring, Cray Origin 2000 AMS subject classifications. 05C50, 05C85, 15A18, 65F15, 65F50, 65Y05, 65Y20 1. Introduction. Frequently problems in quantum mechanics lead to the computation of a small number of extremal eigenval...
A Scalable Parallel Graph Coloring Algorithm for Distributed Memory Computers
- in Proceedings of Euro-Par 2005 Parallel Processing
, 2005
"... In large-scale parallel applications a graph coloring is often carried out to schedule computational tasks. In this paper, we describe a new distributedmemory algorithm for doing the coloring itself in parallel. The algorithm operates in an iterative fashion; in each round vertices are speculativ ..."
Abstract
-
Cited by 9 (4 self)
- Add to MetaCart
In large-scale parallel applications a graph coloring is often carried out to schedule computational tasks. In this paper, we describe a new distributedmemory algorithm for doing the coloring itself in parallel. The algorithm operates in an iterative fashion; in each round vertices are speculatively colored based on limited information, and then a set of incorrectly colored vertices, to be recolored in the next round, is identified. Parallel speedup is achieved in part by reducing the frequency of communication among processors. Experimental results on a PC cluster using up to 16 processors show that the algorithm is scalable.
Speeding up parallel graph coloring
- In: proceedings of Para 2004, Lecture Notes in Computer Science
, 2004
"... Abstract. This paper presents new efficient parallel algorithms for finding approximate solutions to graph coloring problems. We consider an existing shared memory parallel graph coloring algorithm and suggest several enhancements both in terms of ordering the vertices so as to minimize cache misses ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
Abstract. This paper presents new efficient parallel algorithms for finding approximate solutions to graph coloring problems. We consider an existing shared memory parallel graph coloring algorithm and suggest several enhancements both in terms of ordering the vertices so as to minimize cache misses, and performing vertex-to-processor assignments based on graph partitioning instead of random allocation. We report experimental results that demonstrate the performance of our algorithms on an IBM Regatta supercomputer when up to 12 processors are used. Our implementations use OpenMP for parallelization and Metis for graph partitioning. The experiments show that we get up to a 70 % reduction in runtime compared to the previous algorithm. 1
A parallel software-platform for solving problems of partial differential equations using unstructured grids and adaptive multigrid methods
, 1999
"... published in ..."
Distributed Algorithms for Tasking Large Sensor Networks
- Master’s thesis, Virginia Tech
, 2001
"... Recent advances in wireless communications along with developments in low-power circuit design and micro-electro mechanical systems (MEMS) have heralded the advent of compact and inexpensive wireless micro-sensor devices. A large network of such sensor nodes capable of communicating with each other ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Recent advances in wireless communications along with developments in low-power circuit design and micro-electro mechanical systems (MEMS) have heralded the advent of compact and inexpensive wireless micro-sensor devices. A large network of such sensor nodes capable of communicating with each other provides significant new capabilities for automatically collecting and analyzing data from physical environments.
Advances in High-Performance Computing: Multigrid Methods for Partial Differential Equations and its Applications
"... Abstract. The program package UG provides a software platform for discretizing and solving partial differential equations. It supports high level numerical methods for unstructured grids on massively parallel computers. Various applications of complex up to real-world problems have been realized, li ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
Abstract. The program package UG provides a software platform for discretizing and solving partial differential equations. It supports high level numerical methods for unstructured grids on massively parallel computers. Various applications of complex up to real-world problems have been realized, like Navier-Stokes problems with turbulence modeling, combustion problems, two-phase flow, density driven flow and multi-component transport in porous media. Here we report on new developments for a parallel algebraic multigrid solver and applications to an eigenvalue solver, to flow in porous media and to a simulation of Navier-Stokes equations with turbulence modeling. 1
Scalable, Shared Memory Parallel Graph Coloring Heuristics
, 1999
"... Finding a good graph coloring quickly is often a crucial phase in the development of efficient, parallel algorithms for many scientific and engineering applications. In this paper we consider the problem of solving the graph coloring problem itself in parallel. We present a simple and fast paral ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
Finding a good graph coloring quickly is often a crucial phase in the development of efficient, parallel algorithms for many scientific and engineering applications. In this paper we consider the problem of solving the graph coloring problem itself in parallel. We present a simple and fast parallel graph coloring heuristic that is well suited for shared memory programming and yields an almost linear speedup on the PRAM model. We also present a second heuristic that improves on the number of colors used. The heuristics have been implemented using OpenMP. Experiments conducted on an SGI Cray Origin 2000 using very large graphs from finite element methods and eigen value computations validate the theoretical run-time analysis. 1 Introduction The graph coloring problem (GCP) deals with assigning labels (called colors) to the vertices of a graph such that adjacent vertices do not get the same color. The primary objective is to minimize the number of colors used. The GCP arises i...
Improving graph coloring on distributed-memory parallel computers
- in High Performance Computing (HiPC), 2011 18th International Conference on
, 2011
"... Graph coloring is a combinatorial optimization problem that classically appears in distributed computing to identify the sets of tasks that can be safely performed in parallel. Despite many existing efficient sequential algorithms being known for this NP-Complete problem, distributed variants are ch ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
Graph coloring is a combinatorial optimization problem that classically appears in distributed computing to identify the sets of tasks that can be safely performed in parallel. Despite many existing efficient sequential algorithms being known for this NP-Complete problem, distributed variants are challenging. Building on an existing distributed-memory graph coloring framework, we investigate two techniques in this paper. First, we investigate the application of two different vertex-visit orderings, namely Largest First and Smallest Last, in a distributed context and show that they can help to significantly decrease the number of colors, on small- to medium-scale parallel architectures. Second, we investigate the use of a distributed post-processing operation, called recoloring, which further drastically improves the number of colors while not increasing the runtime more than twofold on large graphs. We also investigate the use of multicore architectures for distributed graph coloring algorithms. 1.

