Программирование на JAVA

Навигация

Технология Hyper-Threading от Intel

Производительности всегда мало

0 1

Hyper-Threading

2 3

Углубляемся в технологию

4 5

Максимум эффективности от Hyper-Threading

6 7

Архитектура IA-64

8 9

Архитектура Е2К

10 11 12 13 14 15

Большие компьютерные системы

Виды параллельной обработки

16 17 18 19 20 21 22

Матричная обработка данных

23 24 25 26

Архитектура мультипроцессорных систем общего назначения

27 28 29

Коммуникационные сети

30 31 32 33 34 35 36 37 38 39 40 41 42 43

Организация памяти в мультипроцессорных системах

44 45 46

Программный параллелизм и общие переменные

47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62

Мультикомпьютерные системы

63 64 65

Общая память и передача сообщений

66 67 68 69 70 71 72 73 74

Производительность мультипроцессорных систем

75 76 77 78 79 80 81 82

Использование технологии параллельного программирования MPI-2

Введение

83 84 85

Кластерные системы и стандарт параллельного программирования MPI

86 87 88 89 90 91 92 93 94 95 96 97 98 99

Математические проблемы параллельных вычислений

100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

Реклама :




запуска программы на одном процессоре она загружает векторы в память и при­сваивает переменной dot_product значение 0. При параллельном выполнении программы на двух процессорах часть вычислений, требуемых для получения скалярного произведения, необходимо возложить на один из них. Для этого мы создаем отдельный поток, предназначенный для выполнения на таком процессоре.

integer array a[l...N], b[l...N]

integer dot_product

…..

read a[l...N] from vector_a

read b[l...N] from vector_b

dot_product :=0

do_dot(a, b)

print dot_product

…..

do_dot (integer array x[l...n], integer array y[l...N])

for k:= 1 to N

dot_product := dot_product + x[k]*y[k]

end

end

Рис. 10.15. Последовательная программа вычисления скалярного произведения

Поток — это независимый фрагмент программы. Потоки могут соответство­вать разным фрагментам кода программы или одному и тому же фрагменту, вы­полняемому несколько раз в различных условиях. Главное, что они могут выпол­няться параллельно, как отдельные программы, поэтому их можно запускать на разных процессорах. Вместе с тем потоки являются частями одной и той же про­граммы, реализуемыми в одном и том же адресном пространстве. В типичном од­нопроцессорном окружении каждая программа имеет один поток выполнения.


<< назад вперед >>