Программирование на 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

Реклама :




Когда очередной узел обращается к модулю памяти, чтобы прочитать нужный блок, этот узел становится новым началом списка, а каталог предыдущего начала списка обновляется — указатель на предыдущий узел заменяется указате­лем нового узла. Доступ к памяти для записи разрешается только первому узлу списка (точнее, его началу). Если другой узел захочет выполнить запись, он дол­жен будет записать себя в начало списка и очистить остальные элементы списка.

SCI-схема согласования кэша хорошо масштабируется, так как с увеличением списка узлов требования к объему памяти для его хранения ни в основной памяти, ни в кэш-памяти процессоров не увеличиваются. А недостатком этой схемы явля­ется необходимость хранения дополнительной информации для каждого блока.

Хотя стандарт SCI не определяет конкретную топологию сети обмена, наибо­лее подходящей для него является кольцевая топология. Она реализована в муль­типроцессорах Exemplar V2600 производства Hewlett-Packard и AV25000 произ­водства Data General вместе с описанным в этом разделе протоколом согласова­ния кэша.

Мультипроцессоры cc-NUMA

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

Согласованность кэша может обеспечиваться как аппаратными, так и програм­мными средствами. Но более высокая производительность достигается при ис­пользовании аппаратных средств. Поэтому в большинстве современных мульти­процессоров NUMA согласованность кэша реализуется аппаратно. Такие системы называются системами NUMA с согласованной кэш-памятью (cache coherent NU­MA, cc-NUMA).

10.6.3. Блокировка и согласованность кэш-памяти

Следует отметить, что схемы управления блокировкой для доступа к перемен­ным и схемы согласования кэш-памяти независимы и играют одинаково важную роль. Рассмотрим ситуацию, когда согласованность кэша поддерживается по­средством сквозной записи и при этом запись общих переменных сопровождает­ся обновлением кэша. Предположим, что содержимое переменной SUM в приме­ре из раздела 10.6.1 считывается в кэши двух процессоров, выполняющих задачи Т1 и Т2. Если команды чтения являются частью последовательности операций обновления переменной и для их взаимоисключения не используется механизм блокировок, описанный в разделе 10.6.1, тогда опять может произойти обсуждав­шаяся в указанном разделе ошибка. Если, как и раньше, задача Т1 запишет новое значение ошибки, в переменной SUM окажется неправильное значение 22. В этом случае достигается согласованность кэш-памяти, но для получения пра­вильных результатов все же необходима блокировка.


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