Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #38, ЯНВАРЬ 2004 г.

Умножение производительности

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #038, стр. 038-008-5


Сложности MPP

Когда я говорю о MPP, то имею в виду ряд параллельных компьютеров с распределенной памятью. Первой их особенностью является достаточно низкая цена, но разработка параллельных задач - весьма дорогой процесс.

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

В MPP существуют две различные модели для выполнения задач:

1. SIMD (single instruction stream - multiple data streams) - представляет собой модель, при которой каждый процессор выполняет общую задачу, но со своими данными. Эту модель применяют в зависимости от постановки задачи. Естественно, что заставить каждый проц выполнять сторонние расчеты невозможно.

2. MIMD (multiple instructions streams - multiple data streams) - позволяет решать разные задачи разными процессорами. Недостаток этой модели - сложное программирование для машин с MIMD.

В качестве альтернативы может использоваться еще одна парадигма: SPMD (single program - multiple data). В этой модели во всех узлах выполняется одна и та же программа, но вот пути решения задач различны. По сути, эта парадигма является некоторым объединением SIMD и MIMD.

Чтобы передать данные от процессора к процессору, применяют специальные коммутаторы либо сетевые адаптеры. При этом используется так называемая линейка процессоров: каждый камень связывается не только с конечными, но и с соседними процами, что намного упрощает передачу данных между ними. Для передачи информации могут применяться и сложные системы: транскомпьютеры с четырьмя распараллеленными каналами, двумерные решетки, бинарные деревья и т.д. Коммутаторы, кстати, применяют довольно редко из-за сложности организации, хотя это позволяет связать определенный процессор с любым другим напрямую.

Примером MPP-систем могут служить следующие серверы: IBM RS/6000 SP2, Intel PARAGON/ASCI Red, CRAY T3E и т.п.

Макинтош не отстает!

Как это ни парадоксально, маки также затачиваются под мультипроцессорные архитектуры. MacOS умеет работать с несколькими камнями, а в качестве технологии используется SMP. К сведению, компания Motorola совсем недавно выпустила процессор следующего поколения - PowerPC G5, с официально объявленной частотой 1,6 ГГц. В лабораториях Apple эти чипы уже работают на частотах 2,4 ГГц.

Метакомпьютеры

Существует еще один вид распределенной системы. Это компьютеры, которые обмениваются информацией по сети. По сути, это обычная система распределенных вычислений. Применяется она в крупных локальных сетях или в интернете. Ты, наверное, посещал сайты, где предлагалось скачать специальный клиент для расшифровки активности зеленых человечков :). На самом деле, таких вычислений может быть очень много: от расшифровки 128-битного ключа до исследования белковых соединений.

Назад на стр. 038-008-4  Содержание  Вперед на стр. 038-008-6