Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Algorithm Engineering Parallele Algorithmen Stefan Edelkamp.

Ähnliche Präsentationen


Präsentation zum Thema: "Algorithm Engineering Parallele Algorithmen Stefan Edelkamp."—  Präsentation transkript:

1 Algorithm Engineering Parallele Algorithmen Stefan Edelkamp

2 Übersicht Parallele Musterdatenbanken Parallele Strukturierte Duplikatselimination Disjunkte Duplikatserkennungsbereiche Schlösser Parallele Algorithmen Matrix-Multiplikation List Ranking Euler Tour P-Vollständigkeitstheorie

3 Übersicht Parallele Musterdatenbanken Parallele Strukturierte Duplikatselimination Disjunkte Duplikatserkennungsbereiche Schlösser Parallele Algorithmen Matrix-Multiplikation List Ranking Euler Tour P-Vollständigkeitstheorie

4 Parallele Musterdatenbanken Only pattern databases that include the client tile need to be loaded on the client Because multiple tiles in pattern, from birds eye PDB loaded multiple times In 15-Puzzle with corner and fringe PDB this saves RAM in the order of factor 2 on each machine, compared to loading all In 36-Puzzle with 6-tile pattern databases this saves RAM in the order of factor 6 on each machine, compared to loading all Extends to additive pattern databases

5 Distributed Heuristic Evaluation Assume one child processor for each tile one master processor B3B3 B1B1 B2B2 B8B8 B4B4 B5B5 B6B6 B7B7 B9B9 B 10 B 11 B 12 B 13 B 14 B 15 B0B0 B3B3 B1B1 B2B2 B8B8 B4B4 B5B5 B6B6 B7B7 B9B9 B 10 B 11 B 12 B 13 B 14 B 15 B0B0

6 Parallele Evaluation 35-Puzzle

7 Same bottleneck in external-memory search Bottleneck: Duplicate detection Duplicate paths cause parallelization overhead A C D B BCDDDD Internal memory External memory vs. fast slow A

8 Disjoint duplicate-detection scopes B1B1 B0B0 B4B4 B0B0 B3B3 B1B1 B2B2 B8B8 B4B4 B5B5 B6B6 B7B7 B9B9 B 10 B 11 B 12 B 13 B 14 B 15 B0B0 B1B1 B4B4 B3B3 B2B2 B7B7 B2B2 B3B3 B7B7 B 12 B8B8 B 13 B 15 B 14 B 11 B8B8 B 12 B 13 B 11 B 15 B 14

9 Finding disjoint duplicate-detection scopes B1B1 B0B0 B4B B2B2 B3B3 B7B B8B8 B 12 B 13 B 11 B 15 B B1B1 B5B5 B6B6 B4B4 B9B

10 Implementation of Parallel SDD Hierarchical organization of hash tables One hash table for each abstract node Top-level hash func. = state-space projection func. Shared-memory management Minimum memory-allocation size m Memory wasted is bounded by O(m #processors) External-memory version I/O-efficient order of node expansions I/O-efficient replacement strategy Benötigt nur ein Mutex Schloss B3B3 B1B1 B2B2 B8B8 B4B4 B5B5 B6B6 B7B7 B9B9 B 10 B 11 B 12 B 13 B 14 B 15 B0B0

11 Übersicht Parallele Musterdatenbanken Parallele Strukturierte Duplikatselimination Disjunkte Duplikatserkennungsbereiche Schlösser Parallele Algorithmen Matrix-Multiplikation List Ranking Euler Tour P-Vollständigkeitstheorie

12 Parallelle Matrix- Multiplication

13

14 Parallele Matrix Multiplication

15 Exklusives Schreiben

16 Parallele Kopien

17 Fazit Matrix Multiplication

18 Paralleles List Ranking

19 List Ranking

20 Erster Algorithmus

21 Prinzip

22 Komplexität

23 Verbesserungen

24 Strategie

25 Unabhängige Mengen

26 2-Färbung

27 Reduktion

28 Restauration

29 Beispiel

30 Variablen

31 Beispiel (ctd.)

32 Pseudo Code

33 Nächster Schritt

34 Analyse

35 Backup

36 Algo

37

38 Speicher

39 Analyse

40 Ausblick: Randomisiert in O(n) whp?

41 Ein optimaler randomisierter Algorithmus

42

43

44

45

46

47

48 Analyse

49

50

51 Probleme mit DFS

52 Idee Euler Tour

53 Parallel DFS

54 DFS Nummern

55 Allgemein

56

57

58 Beispiel

59 Ein Zyklus oder mehrere?

60 Korrektheit

61

62 Beispiel

63 Konstruktion Euler Tour

64 Fazit Euler Touren

65 Wann ist ein Algorithmus parallelisierbar?

66 NC

67 P and NC

68

69 Reduction

70 P-Vollständigkeit

71 Circuit Value Problem (CVP)

72 Beispiel

73 CVP is P-complete

74

75 Encoding a Turing Machine in a Circuit


Herunterladen ppt "Algorithm Engineering Parallele Algorithmen Stefan Edelkamp."

Ähnliche Präsentationen


Google-Anzeigen