Алгоритм GHS: различия между версиями

Материал из Алговики
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Строка 1: Строка 1:
== Свойства и структура алгоритмов ==
+
== Свойства и структура алгоритма ==
 
=== Общее описание алгоритма ===
 
=== Общее описание алгоритма ===
  
 
'''Алгоритм GHS''' (сокр. от фамилий авторов: Gallager, Humblet, Spira)<ref>Gallager, Robert G, P A Humblet, and P M Spira. “A Distributed Algorithm for Minimum-Weight Spanning Trees.” ACM Transactions on Programming Languages and Systems 5, no. 1 (1983): 66–77. doi:10.1145/357195.357200.</ref> предназначен для распределённого [[Построение минимального остовного дерева (MST)|построения минимального остовного дерева]] во взвешенном неориентированном графе. Алгоритм GHS основан на [[алгоритм Борувки|алгоритме Борувки]], адаптированном для применения в распределённой среде. Известны модификации алгоритма, улучшающие среднее и наихудшее время работы<ref>Gafni, Eli. “Improvements in the Time Complexity of Two Message-Optimal Election Algorithms,” 175–85, New York, New York, USA: ACM Press, 1985. doi:10.1145/323596.323612.</ref><ref>Awerbuch, B. “Optimal Distributed Algorithms for Minimum Weight Spanning Tree, Counting, Leader Election, and Related Problems,” 230–40, New York, New York, USA: ACM Press, 1987. doi:10.1145/28395.28421.</ref><ref>Garay, Juan A, Shay Kutten, and David Peleg. “A SubLinear Time Distributed Algorithm for Minimum-Weight Spanning Trees.” SIAM Journal on Computing 27, no. 1 (February 1998): 302–16. doi:10.1137/S0097539794261118.</ref><ref>Faloutsos, Michalis, and Mart Molle. “A Linear-Time Optimal-Message Distributed Algorithm for Minimum Spanning Trees.” Distributed Computing 17, no. 2 (August 2004). doi:10.1007/s00446-004-0107-2.</ref>.
 
'''Алгоритм GHS''' (сокр. от фамилий авторов: Gallager, Humblet, Spira)<ref>Gallager, Robert G, P A Humblet, and P M Spira. “A Distributed Algorithm for Minimum-Weight Spanning Trees.” ACM Transactions on Programming Languages and Systems 5, no. 1 (1983): 66–77. doi:10.1145/357195.357200.</ref> предназначен для распределённого [[Построение минимального остовного дерева (MST)|построения минимального остовного дерева]] во взвешенном неориентированном графе. Алгоритм GHS основан на [[алгоритм Борувки|алгоритме Борувки]], адаптированном для применения в распределённой среде. Известны модификации алгоритма, улучшающие среднее и наихудшее время работы<ref>Gafni, Eli. “Improvements in the Time Complexity of Two Message-Optimal Election Algorithms,” 175–85, New York, New York, USA: ACM Press, 1985. doi:10.1145/323596.323612.</ref><ref>Awerbuch, B. “Optimal Distributed Algorithms for Minimum Weight Spanning Tree, Counting, Leader Election, and Related Problems,” 230–40, New York, New York, USA: ACM Press, 1987. doi:10.1145/28395.28421.</ref><ref>Garay, Juan A, Shay Kutten, and David Peleg. “A SubLinear Time Distributed Algorithm for Minimum-Weight Spanning Trees.” SIAM Journal on Computing 27, no. 1 (February 1998): 302–16. doi:10.1137/S0097539794261118.</ref><ref>Faloutsos, Michalis, and Mart Molle. “A Linear-Time Optimal-Message Distributed Algorithm for Minimum Spanning Trees.” Distributed Computing 17, no. 2 (August 2004). doi:10.1007/s00446-004-0107-2.</ref>.
  
=== Математическое описание ===
+
=== Математическое описание алгоритма ===
 
=== Вычислительное ядро алгоритма ===
 
=== Вычислительное ядро алгоритма ===
 
=== Макроструктура алгоритма ===
 
=== Макроструктура алгоритма ===
=== Описание схемы реализации последовательного алгоритма ===
+
=== Схема реализации последовательного алгоритма ===
 
=== Последовательная сложность алгоритма ===
 
=== Последовательная сложность алгоритма ===
 
=== Информационный граф ===
 
=== Информационный граф ===
=== Описание ресурса параллелизма алгоритма ===
+
=== Ресурс параллелизма алгоритма ===
=== Описание входных и выходных данных ===
+
=== Входные и выходные данные алгоритма ===
=== Свойства алгоритма===
+
=== Свойства алгоритма ===
== Программная реализация алгоритмов ==
+
 
 +
== Программная реализация алгоритма ==
 
=== Особенности реализации последовательного алгоритма ===
 
=== Особенности реализации последовательного алгоритма ===
=== Описание локальности данных и вычислений ===
+
=== Локальность данных и вычислений ===
=== Возможные способы и особенности реализации параллельного алгоритма ===
+
==== Локальность реализации алгоритма ====
 +
===== Структура обращений в память и качественная оценка локальности =====
 +
===== Количественная оценка локальности =====
 +
=== Возможные способы и особенности параллельной реализации алгоритма ===
 
=== Масштабируемость алгоритма и его реализации ===
 
=== Масштабируемость алгоритма и его реализации ===
 +
==== Масштабируемость алгоритма ====
 +
==== Масштабируемость реализации алгоритма ====
 
=== Динамические характеристики и эффективность реализации алгоритма ===
 
=== Динамические характеристики и эффективность реализации алгоритма ===
 
=== Выводы для классов архитектур ===
 
=== Выводы для классов архитектур ===
 
=== Существующие реализации алгоритма ===
 
=== Существующие реализации алгоритма ===
 +
 
== Литература ==
 
== Литература ==
 +
<references />
  
<references />
+
[[Категория:Начатые статьи]]

Версия 14:17, 29 июля 2015

Содержание

1 Свойства и структура алгоритма

1.1 Общее описание алгоритма

Алгоритм GHS (сокр. от фамилий авторов: Gallager, Humblet, Spira)[1] предназначен для распределённого построения минимального остовного дерева во взвешенном неориентированном графе. Алгоритм GHS основан на алгоритме Борувки, адаптированном для применения в распределённой среде. Известны модификации алгоритма, улучшающие среднее и наихудшее время работы[2][3][4][5].

1.2 Математическое описание алгоритма

1.3 Вычислительное ядро алгоритма

1.4 Макроструктура алгоритма

1.5 Схема реализации последовательного алгоритма

1.6 Последовательная сложность алгоритма

1.7 Информационный граф

1.8 Ресурс параллелизма алгоритма

1.9 Входные и выходные данные алгоритма

1.10 Свойства алгоритма

2 Программная реализация алгоритма

2.1 Особенности реализации последовательного алгоритма

2.2 Локальность данных и вычислений

2.2.1 Локальность реализации алгоритма

2.2.1.1 Структура обращений в память и качественная оценка локальности
2.2.1.2 Количественная оценка локальности

2.3 Возможные способы и особенности параллельной реализации алгоритма

2.4 Масштабируемость алгоритма и его реализации

2.4.1 Масштабируемость алгоритма

2.4.2 Масштабируемость реализации алгоритма

2.5 Динамические характеристики и эффективность реализации алгоритма

2.6 Выводы для классов архитектур

2.7 Существующие реализации алгоритма

3 Литература

  1. Gallager, Robert G, P A Humblet, and P M Spira. “A Distributed Algorithm for Minimum-Weight Spanning Trees.” ACM Transactions on Programming Languages and Systems 5, no. 1 (1983): 66–77. doi:10.1145/357195.357200.
  2. Gafni, Eli. “Improvements in the Time Complexity of Two Message-Optimal Election Algorithms,” 175–85, New York, New York, USA: ACM Press, 1985. doi:10.1145/323596.323612.
  3. Awerbuch, B. “Optimal Distributed Algorithms for Minimum Weight Spanning Tree, Counting, Leader Election, and Related Problems,” 230–40, New York, New York, USA: ACM Press, 1987. doi:10.1145/28395.28421.
  4. Garay, Juan A, Shay Kutten, and David Peleg. “A SubLinear Time Distributed Algorithm for Minimum-Weight Spanning Trees.” SIAM Journal on Computing 27, no. 1 (February 1998): 302–16. doi:10.1137/S0097539794261118.
  5. Faloutsos, Michalis, and Mart Molle. “A Linear-Time Optimal-Message Distributed Algorithm for Minimum Spanning Trees.” Distributed Computing 17, no. 2 (August 2004). doi:10.1007/s00446-004-0107-2.