Presentation is loading. Please wait.

Presentation is loading. Please wait.

Large Scale Parallel Graph Coloring 1. Presentation Overview Problem Description Basic Algorithm Parallel Strategy –Work Spawning –Graph Partition Results.

Similar presentations


Presentation on theme: "Large Scale Parallel Graph Coloring 1. Presentation Overview Problem Description Basic Algorithm Parallel Strategy –Work Spawning –Graph Partition Results."— Presentation transcript:

1 Large Scale Parallel Graph Coloring 1

2 Presentation Overview Problem Description Basic Algorithm Parallel Strategy –Work Spawning –Graph Partition Results 2

3 Problem Description A "graph" is a collection of vertices or 'nodes' and a collection of edges that connect pairs of vertices. 3

4 Sequential Algorithm 4 The idea is to color the vertices of a graph such that no two adjacent vertices share the same color

5 Sequential Algorithm -Step 1 5

6 Sequential Algorithm -Step 2 6

7 Sequential Algorithm -Step 3 7

8 Sequential Algorithm -Step 4 8

9 Sequential Algorithm -Step 5 9

10 Sequential Algorithm -Step 6 10

11 Back to step 3 11

12 Parallel Algorithm 12

13 Parallel Strategy This work follows in the footsteps of a 1995 paper by Kale et al. on small-scale parallel graph coloring. As it notes, exploring the search space consistently with a good sequential heuristic is important to achieving parallel speedup. With priorities placed on the various possibilities to explore, we then expose the possibilities in priority order to the numerous processing elements available in the system. Sub graph coloring problems resulting from partitioning will each be considered at a priority consistent with their likelihood of contributing to a solution to the overall coloring problem.. 13

14 Charm++ Implementation Start with 1 chare with an uncolored graph Spawn new chares to explore parts of search space Chares report success or failure to 'parent' If the root node succeeds, or any of its children succeed, then we're done

15 Graph Partition Boost Graph Library (BGL)‏ –Boost Graph Library is a generic interface that allows access to a graph's structure –BGL provides some general purpose graph classes METIS: A Library for Multilevel Partitioning Algorithms –Provides high quality partitions –It is extremely fast –Produces low fill orderings Charm++: Spawn a chare for each part, have them report up to a parent, which merges successful results 15

16 Results Sequential heuristic is effective –Solves small problems quickly –Solves larger problems in reasonable time, once sufficient # of colors is reached Parallel spawning not quite there yet... –Successfully exhausts memory –Need to limit, prioritize better

17 Questions? 17

18 Sequential Algorithm 18

19 Parallel Algorithm 19

20 Back to Step 3 20


Download ppt "Large Scale Parallel Graph Coloring 1. Presentation Overview Problem Description Basic Algorithm Parallel Strategy –Work Spawning –Graph Partition Results."

Similar presentations


Ads by Google