Параллельные вычисления. Баканов В.М. - 39 стр.

UptoLike

Составители: 

- 39 -
Диаметр определяется как максимальное расстояние (обычно кратчай-
ших путь между процессорами) между двумя процессорами в сети, эта
величина характеризует максимально необходимое время для передачи
данных между процессорами (время передачи в первом приближении
прямо пропорционально длине пути).
Связность (connectivity) - показатель, характеризующий наличие разных
маршрутов передачи данных между процессорами сети; конкретный вид
показателя может быть определен, напр., как минимальное количество
дуг, которое надо удалить для разделения сети передачи данных на две
несвязные области.
Ширина бинарного деления (bisection width) - показатель, определяемый
как минимальное количество дуг, которое надо удалить для разделения
сети передачи данных на две несвязные области одинакового размера.
Стоимость определяется, напр., как общее количество линий передачи
данных в многопроцессорной вычислительной системе.
Количественные значения этих показателей для различной топологии се-
тей приведены в работе [3].
Естественным представляется объединение преимуществ систем с общей
(относительная простота создания параллельных программ) и распределен-
ной памятью (высокая масштабируемость); решением этого вопроса явилось
создание компьютеров с архитектурой
NUMA (Non Uniform Memory Access);
в этом смысле классические SMP-компьютеры обладают архитектурой UMA
(Uniform Memory Access). При этом применяется механизм (обычно аппарат-
ного уровнячто быстрее), позволяющий пользовательским программам
рассматривать всю (физически) распределенную между процессорами память
как единое адресное пространство. Примерами NUMA-компьютеров является
построенная еще в 70-x г.г. и содержащая объединенный межкластерной ши-
ной набор кластеров система
Cm* и объединяющий 256 процессоров ком-
плекс BBN Butterfly (1981, фирма BBN Advanced Computers).
Недостатками NUMA-компьютеров является все же значительная разница
времени обращения к собственной (локальной) памяти данного процессора и
памяти сторонних процессоров, а также проблема кэша (cache coherence
problem) - в случае сохранения процессором
П
1
некоего значения в ячейке
N
1
при последующей попытке прочтения данных из той же ячейки
N
1
про-
цессором
П
2
последний получит значение из кэша процессора
П
1
, которое
может не совпадать с истинным значением переменной в ячейке
N
1
, если
кэш процессора
П
1
еще несброшенв память (о чем процессор
П
2
знать
не обязан).
Для решения проблемы когерентности (соответствия, одинаковости) кэша
предложена и реализована архитектура ccNUMA (cache coherent NUMA), по-
                                   - 39 -


  • Диаметр определяется как максимальное расстояние (обычно кратчай-
   ших путь между процессорами) между двумя процессорами в сети, эта
   величина характеризует максимально необходимое время для передачи
   данных между процессорами (время передачи в первом приближении
   прямо пропорционально длине пути).
  • Связность (connectivity) - показатель, характеризующий наличие разных
   маршрутов передачи данных между процессорами сети; конкретный вид
   показателя может быть определен, напр., как минимальное количество
   дуг, которое надо удалить для разделения сети передачи данных на две
   несвязные области.
  • Ширина бинарного деления (bisection width) - показатель, определяемый
   как минимальное количество дуг, которое надо удалить для разделения
   сети передачи данных на две несвязные области одинакового размера.
  • Стоимость определяется, напр., как общее количество линий передачи
   данных в многопроцессорной вычислительной системе.

   Количественные значения этих показателей для различной топологии се-
тей приведены в работе [3].
   Естественным представляется объединение преимуществ систем с общей
(относительная простота создания параллельных программ) и распределен-
ной памятью (высокая масштабируемость); решением этого вопроса явилось
создание компьютеров с архитектурой NUMA (Non Uniform Memory Access);
в этом смысле классические SMP-компьютеры обладают архитектурой UMA
(Uniform Memory Access). При этом применяется механизм (обычно аппарат-
ного уровня – что быстрее), позволяющий пользовательским программам
рассматривать всю (физически) распределенную между процессорами память
как единое адресное пространство. Примерами NUMA-компьютеров является
построенная еще в 70-x г.г. и содержащая объединенный межкластерной ши-
ной набор кластеров система Cm* и объединяющий 256 процессоров ком-
плекс BBN Butterfly (1981, фирма BBN Advanced Computers).
   Недостатками NUMA-компьютеров является все же значительная разница
времени обращения к собственной (локальной) памяти данного процессора и
памяти сторонних процессоров, а также проблема кэша (cache coherence
problem) - в случае сохранения процессором П1 некоего значения в ячейке
N1 при последующей попытке прочтения данных из той же ячейки N1 про-
цессором П 2 последний получит значение из кэша процессора П1 , которое
может не совпадать с истинным значением переменной в ячейке N1 , если
кэш процессора П1 еще не ‘сброшен’ в память (о чем процессор П 2 ‘знать’
не обязан).
   Для решения проблемы когерентности (соответствия, одинаковости) кэша
предложена и реализована архитектура ccNUMA (cache coherent NUMA), по-