Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовая по Руденко.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
3.38 Mб
Скачать

3.3 Распределение нитей на структуре типа обобщенный гиперкуб

По условию задан обобщенный трехмерный гиперкуб 3х3х6, на рисунке 21 для примера представлен гиперкуб 2х3х3.

Рисунок 21 - Схема представления обобщенного 3-х мерного гиперкуба 2х4х3

Для построения матрицы дистанций для гиперкуба необходимо перенумеровать его вершины. Нумерация показана в таблице 2:

Таблица 4 - Нумерация вершин гиперкуба.

Координата

ВМ (x,y,z)

000

001

002

003

004

010

011

012

013

014

020

021

022

023

024

Номер ВМ

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Координата

ВМ (x,y,z)

030

031

032

033

034

040

041

042

043

044

100

101

102

103

104

Номер ВМ

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

Координата

ВМ (x,y,z)

110

111

112

113

114

120

121

122

123

124

130

131

132

133

134

Номер ВМ

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

Координата

ВМ (x,y,z)

140

141

142

143

144

200

201

202

203

204

210

211

212

213

214

Номер ВМ

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

Координата

ВМ (x,y,z)

220

221

222

223

224

230

231

232

233

234

240

241

242

243

244

Номер ВМ

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

Далее строится матрица дистанций, в которой расстояния указываются в минимальном числе промежуточных связей между соответствующими вычислительными модулями. В связи с большим размером матрицы дистанций, содержащей 5625 элементов (75х75), целиком она не приводится. Минимальную сумму расстояний до остальных модулей имеет 38-й модуль (это очевидно, так как данный модуль находится в геометрическом центре вычислительной системы). Сумма расстояний для него равна 230. Приведу часть матрицы дистанций для этого вычислительного модуля (см. таблицу 3):

Таблица 5 - Расстояния от 38-го вычислительного модуля до остальных ВМ.

Номер ВМ

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Расстояние

5

4

3

4

5

4

3

2

3

4

3

2

1

2

3

Номер ВМ

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

Расстояние

4

3

2

3

4

5

4

3

4

5

4

3

2

3

4

Номер ВМ

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

Расстояние

3

2

1

2

3

2

1

0

1

2

3

2

1

2

3

Номер ВМ

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

Расстояние

4

3

2

3

4

5

4

3

4

5

4

3

2

3

4

Номер ВМ

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

Расстояние

3

2

1

2

3

4

3

2

3

4

5

4

3

4

5

Необходимо отметить, что сумма расстояний от выбранного модуля до остальных может быть получена аналитически, без нахождения расстояний до каждого отдельного вычислительного модуля. Рассмотрим пример трёхмерного гиперкуба, соответствующий решаемой задаче. Пусть , , - число вычислительных модулей по осям x, y и z соответственно, , , - размер гиперкуба по осям x, y и z соответственно, , , - координаты выбранного вычислительного модуля. Тогда число вычислительных модулей по осям x, y и z, расположенных на одинаковом расстоянии от выбранного, равно соответственно: , , .

Тогда сумма всех расстояний будет равна: .(1)

Для 38-го вычислительного модуля согласно формуле (1) сумма расстояний: , что совпадает с полученным результатом.

Таким образом, оптимальным для размещения первой нити является 38-й вычислительный модуль. Для размещения всех нитей необходимо 10 вычислительных модулей. 38-й вычислительный модуль связан с 6 другими модулями. Таким образом, 6 нитей загружаются в 13-й, 33-й, 37-й, 38-й, 39-й, 43-й и 63-й вычислительные модули, а оставшиеся 3 – в 32-й, 34-й и 42-й модули (см рисунок 10), так как расстояние до 38-го ВМ до этих модулей равно 2:

Рисунок 22 - Распределение нитей по вычислительным модулям ВС структуры «обобщенный гиперкуб».