Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

МВК с общедоступной памятью




Многопроцессорные вычислительные комплексы.

MKMD – системы.

Класс MKMD – систем состоит из двух подклассов: подкласс многопроцессорных вычислительных комплексов (МВК) и подкласс многомашинных вычислительных комплексов (ММВК).

 

Рассмотренные выше OKMD – системы плохо приспособлены для параллельного выполнения различных потоков команд (разных программных ветвей одной задачи или программ разных задач). Такое выполнение стало осуществляться на нескольких параллельно работающих “полноправных” процессорах (содержащих УУ, АЛУ), использующих общую для них память или имеющих доступ лишь к собственной оперативной памяти. В последнем случае взаимодействие программ, выполняющихся на процессорах, осуществлялось за счет передачи (с поддержкой операционной системы) сообщений друг другу по коммуникациям, связывающим такие вычислительные узлы.

 

Под организацией общедоступной оперативной памяти МВК понимается возможность доступа за данными к любой ее ячейке при выполнении операций в любом процессоре комплекса.

Объединение процессоров на общей оперативной памяти с обеспечением одинакового времени доступа от всех процессоров определяет подкласс SMP (Symmetric multiprocessor). Преимуществом такой организации является простота программирования задач даже с учетом необходимости синхронизации и взаимного исключения программ ветвей (параллельных процессов) этих задач. Недостатком такого подхода является неэффективность подключения к общей памяти большого числа процессоров из-за возрастающих задержек выполнения операций в них в связи с увеличением, несмотря на значительное “расслоение” оперативной памяти, числа конфликтов при обращении к ней и, соответственно, времен ожидания данных при одновременном обращении к блокам памяти от многих процессоров. Объединение на общей памяти даже нескольких десятков процессоров становилось нерациональным.

Примером SMP – комплекса является отечественная вычислительная система “Эльбрус-2”, в котором через матричный коммутатор осуществляется эффективный доступ к памяти десяти процессоров. Через этот же коммутатор осуществлялось подключение к общей памяти специальных процессоров ввода-вывода, через которые осуществлялось подключение внешних устройств.

 

Другим вариантом использования общедоступной памяти для процессоров является ее распределение по многим вычислительным узлам, объединенных общей магистралью передачи данных, через которую процессор в каждом вычислительном узле при выполнении операций может иметь доступ к ячейкам памяти других вычислительных узлов. При этом время обращения к памяти увеличивается с удалением от процессора того вычислительного узла, к памяти которого происходит обращение. Такая организация вычислительной системы с общедоступной памятью носит название NUMA (Non Uniform Memory Access). Если при выполнении программы процессорами основное количество обращений за данными будет выполняться к памяти “своего” узла или близко расположенных узлов, то использование NUMA-системы будет эффективным при значительном числе вычислительных узлов. Достижение этого требует существенного усложнения программирования вычислений. В противном случае “масштабирование” NUMA –системы будет ограничено. Примерами NUMA-систем являются системы SGI Origin2000, Sun HPC 10000, IBM/Sequent NUMA-Q 200

Имеются вычислительные системы, содержащие в узлах NUMA – системы SMP – подсистемы (SMP - “кирпичи”). Примером такой системы является комплекс SPP-1200, где SMP–подсистемы (“гиперузлы”) объединяются в топологии “двойной тор”.

 

МВК с разделенной памятью.

Если в каждом вычислительном узле использовать только “собственную” оперативную память, то не будет ограничений на “масштабирование” такой системы и, соответственно, на количество параллельно выполняемых ветвей (процессов) решаемой задачи, выполняемых в узлах системы. В то же время общее время решения задачи может существенно зависеть от эффективности передачи данных между ветвями (процессами) через объединяющую процессоры коммуникационную систему.

Естественно, что размещение программ и данных задачи по вычислительным узлам и организация передач данных (поддерживаемых операционной системой) между узлами вызывает определенные затруднения при программировании решения задачи.

Описанные системы образуют подкласс MPP (Massively Parallel Processor). Многие из них содержат тысячи и десятки тысяч процессоров. Имеется много различных топологий объединения процессоров в MPP- системах: “линейка”, “ кольцо”, “решетка”, многомерные “торы”, “гиперкуб”, “полный граф” соединений и др.

Представляет интерес сравнение двух последних указанных топологий: гиперкуба и полного графа соединений. Гиперкуб ранга n имеет число вершин (вычислительных узлов), равное 2 в степени n. Отношение числа связей (объемов оборудования) гиперкуба к полному графу при одинаковом числе узлов при росте величины n определяет существенное преимущество гиперкуба. Максимальная длина “транзита” данных в гиперкубе (число проходимых связей при передаче сообщения) равна n (в полном графе она всегда равна 1). Эта величина (соответственно и время передачи данных) растет не столь быстро по сравнению с ростом объема оборудования для полного графа. Поэтому во многих случаях реальные MPP – системы строились по топологии гиперкуба.

Примерами MPP–систем являются системы IBM RS/6000 SP2, Intel PARAGON/ASCI Red, CRAY T3E, Hitachi SR8000.

Успешным оказалось построение фирмой IBM MPP–системы с использованием центрального коммутатора (система IBM RS/6000 SP2). К нему подсоединяются до 128 вычислительных узлов, в качестве которых использовались рабочие станции RS6000 (без внешних устройств и, соответственно, оборудования связи с ними или с полным комплектом оборудования для обеспечения ввода информации в систему и вывода результатов вычислений). Такое гибкое решение позволяло также реализовать в системе с одним коммутатором как многопроцессорные, так и многомашинные подсистемы.

Другим интересным примером организации MPP – системы являются созданные под руководством академика Левина Владимира Константиновича отечественные системы МВС-100 и МВС-1000 (различаются лишь типом используемого процессора), вычислительные модули которых состоят из 16 узлов, соединяемых по топологии “решетка” с дополнительными двумя связями между противоположными “угловыми” узлами. Каждый узел содержит основной вычислительный процессор и его оперативную память, а также “связной” процессор с собственной памятью, обеспечивающий в узле прием-передачу данных. Свободные связи узлов используются для соединения вычислительных модулей друг с другом и подключения к системе «внешних» компьютеров.

Решение проблемы ввода-вывода информации в многопроцессорных вычислительных системах любого типа (SMP, NUMA, MPP) осуществляется за счет подключения к системе внешних (дополнительных) компьютеров, обеспечивающих выполнение этой функции, с соответствующим согласованием работы их системного программного обеспечения с системным программным обеспечением мультипроцессора.

Следует отметить, что одной из первых в мире MPP–систем была разработанная в Киеве в Институте кибернетики им. В.М.Глушкова “макроконвейерная ЭВМ” (ЕС-2701), в которой вычислительные узлы на базе стандартных процессоров ЕС ЭВМ (на них выполнялись основные вычисления) объединялись через систему коммутаторов с так называемыми специальными “логическими” узлами, в которых выполнялись части программы решения задачи, обеспечивающие управление процессом ее решения.

В MPP-системах Cray T3E и Cray T3D процессорные узлы объединены в топологии трехмерного тора. Каждая элементарная связь между двумя узлами - это два однонаправленных канала передачи данных, что допускает одновременный обмен данными в противоположных направлениях.

MPP-системы строятся и на базе векторно-конвейерных процессоров (параллельные векторные системы - PVP). К этому подклассу относится линия векторно-конвейерных компьютеров CRAY: CRAY J90/T90, CRAY SV1, CRAY X1, системы NEC SX-4/SX-5, серия Fujitsu VPP.

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

 




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 406; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.