SlideShare une entreprise Scribd logo
1  sur  120
Организация ЭВМ и систем
Тема: Параллельные системы
• Понятие о многомашинных и
многопроцессорных вычислительных
системах
• Основные классы параллельных систем,
их характерные особенности
Что такое суперЭВМ?Что такое суперЭВМ?
Оксфордский толковый словарь по вычислительнойОксфордский толковый словарь по вычислительной
технике, изданныйтехнике, изданный в 1986 годув 1986 году, сообщает, что, сообщает, что
суперкомпьютерсуперкомпьютер -- это очень мощная ЭВМэто очень мощная ЭВМ сс
производительностью свыше 10 MFLOPSпроизводительностью свыше 10 MFLOPS.. В начале 90-В начале 90-
хх годов границу проводили уже около отметкигодов границу проводили уже около отметки в 300в 300
MFLOPSMFLOPS.. В 2001 годуВ 2001 году специалисты двух ведущихспециалисты двух ведущих
"суперкомпьютерных" стран, - США и Японии, -"суперкомпьютерных" стран, - США и Японии, -
договорились о подъеме планкидоговорились о подъеме планки до 5 GFLOPSдо 5 GFLOPS..
В 1989 году Г. Беллом и Д. Нельсоном была
разработана шутливая классификация, предлагающая
любой компьютер, весящий более тонны, считать
суперкомпьютером. Из ряда предложенных определений
суперкомпьютеров безоговорочно сегодня признается
статус суперкомпьютеров лишь для систем,
включенных в последнюю версию выпуска рейтинга
Top 500.
Таким образом,Таким образом, основные признаки,основные признаки,
характеризующие суперЭВМ,характеризующие суперЭВМ, кроме высокойкроме высокой
производительности, следующие:производительности, следующие:
самый современный технологический уровеньсамый современный технологический уровень
(например, GaAs-технология);(например, GaAs-технология);
специфические архитектурные решения,специфические архитектурные решения,
направленные на повышение быстродействиянаправленные на повышение быстродействия
(например, наличие операций над векторами);(например, наличие операций над векторами);
цена, обычно свыше 1-2 млн. долл.цена, обычно свыше 1-2 млн. долл.
Выдающаяся роль в становлении суперкомпьютерных
систем принадлежит крупнейшим идеологам –
академикам С.А. Лебедеву, В.М. Глушкову и Сеймуру
Крею.
В 1985 году в мире действовало уже более 150 таких
систем стоимостью около $10 млн. каждая.
Пик разработок в СССР суперкомпьютерных систем
пришелся примерно на 1986 год.
В достаточной мере тогда финансировались и
координировались через оборонные ведомства
следующие разработки многопроцессорных систем:
– ереванский матричный спецпроцессор EC2700 (этот
спецпроцессор выполнял только узкий набор операций
над матрицами и векторами, но с очень большой
скоростью);
– киевский макроконвейер EC2701 (ведущие
разработчики В.М. Глушков, С.Б. Погребинский, А.Г.
Кухарчук, В.П. Клименко, Ю.В. Капитонова и др.);
– ленинградский мультипроцессор с динамической
архитектурой EC2704;
– таганрогский мультипроцессор EC2706;
– семейство мультипроцессоров ПС ИПУ АН СССР;
– Электроника СС – БИС;
– московские комплексы «Эльбрус-1», «Эльбрус-2»
(ведущие разработчики С.А. Лебедев, В.С. Бурцев, Б.А.
Бабаян и др.);
– киевский коллективный интеллектуальный терминал
для «Эльбрус-2» (ведущие разработчики З.Л. Рабинович,
А.А. Якуба и др.);
– московские системы НИИ “Квант” и ряд других.
Области применения суперЭВМОбласти применения суперЭВМ
АвтомобилестроениеАвтомобилестроение
Нефте- и газодобычаНефте- и газодобыча
ФармакологияФармакология
Прогноз погоды и моделирование измененияПрогноз погоды и моделирование изменения
климатаклимата
СейсморазведкаСейсморазведка
Проектирование электронных устройствПроектирование электронных устройств
Синтез новых материаловСинтез новых материалов
И многие, многие другиеИ многие, многие другие
В 1995 году корпус автомобиля Nissan MaximaВ 1995 году корпус автомобиля Nissan Maxima
удалось сделать на 10% прочнее благодаряудалось сделать на 10% прочнее благодаря
использованию суперкомпьютера фирмы Cray (Theиспользованию суперкомпьютера фирмы Cray (The
Atlanta Journal, 28 мая, 1995г). С помощью него былиAtlanta Journal, 28 мая, 1995г). С помощью него были
найдены не только слабые точки кузова, но и наиболеенайдены не только слабые точки кузова, но и наиболее
эффективный способ их удаления.эффективный способ их удаления.
История появления параллелизма вИстория появления параллелизма в
архитектуре ЭВМархитектуре ЭВМ
 1953 г. – IBM 7011953 г. – IBM 701

 1955 г. – IBM 7041955 г. – IBM 704
 1958 г. – IBM 709 (независимые контроллеры I/O)1958 г. – IBM 709 (независимые контроллеры I/O)
 1961 г. – IBM STRETCH (опережающий просмотр,1961 г. – IBM STRETCH (опережающий просмотр,
расслоение памяти на 2 банка)расслоение памяти на 2 банка)
 1963 г. – ATLAS (реализована конвейерная обработка1963 г. – ATLAS (реализована конвейерная обработка
данных)данных)
 1964 г. – CDC 6600 (независимые устройства – несколько1964 г. – CDC 6600 (независимые устройства – несколько
конвейеров)конвейеров)
 1969 г. – CDC 7600 (8 конвейерных функциональных1969 г. – CDC 7600 (8 конвейерных функциональных
устройств)устройств)
 1974 г. – ALLIAC (УУ + матрица из 64 процессоров)1974 г. – ALLIAC (УУ + матрица из 64 процессоров)
 1976 г. – CRAY1 (векторно-конвейерные процессоры)1976 г. – CRAY1 (векторно-конвейерные процессоры)
-) параллельный формат данныхпараллельный формат данных
-) АЛУ с плавающей точкой-) АЛУ с плавающей точкой
АрхитектураАрхитектура традиционныхтрадиционных последовательныхпоследовательных
компьютеровкомпьютеров основана на идеях Джона фон Неймана иоснована на идеях Джона фон Неймана и
включаетвключает в себяв себя центральный процессор, оперативнуюцентральный процессор, оперативную
память и устройства ввода/выводапамять и устройства ввода/вывода..
Последовательность команд применяется кПоследовательность команд применяется к
последовательности данных.последовательности данных. Скорость работы такогоСкорость работы такого
компьютера определяется быстродействием егокомпьютера определяется быстродействием его
центрального процессора и временем доступа кцентрального процессора и временем доступа к
оперативной памяти.оперативной памяти. Быстродействие центральногоБыстродействие центрального
процессора может быть увеличено за счет увеличенияпроцессора может быть увеличено за счет увеличения
тактовой частотытактовой частоты, величина которой зависит от плотности, величина которой зависит от плотности
элементов в интегральной схеме, способа их "упаковки" иэлементов в интегральной схеме, способа их "упаковки" и
быстродействия микросхем оперативной памятибыстродействия микросхем оперативной памяти..
Другие методы повышения быстродействияДругие методы повышения быстродействия
основаны на расширениях традиционной фон-основаны на расширениях традиционной фон-
неймановской архитектуры, включающих:неймановской архитектуры, включающих:
конвейерную обработку данных и команд;конвейерную обработку данных и команд;
использование процессоров с сокращеннымиспользование процессоров с сокращенным
набором команд (RISC-процессоров). В RISC-набором команд (RISC-процессоров). В RISC-
процессорах большая часть команд выполняетсяпроцессорах большая часть команд выполняется
за 1- 2 такта;за 1- 2 такта;
использование суперскалярныхиспользование суперскалярных
процессоровпроцессоров;;
векторную обработку данных;векторную обработку данных;
использование процессоров со сверхдлиннымиспользование процессоров со сверхдлинным
командным словом;командным словом;
использование многопроцессорныхиспользование многопроцессорных
конфигураций.конфигураций.
Параллельная обработка данныхПараллельная обработка данных, имеет, имеет
две разновидности:две разновидности:
 Конвейерность (выделение несколькихКонвейерность (выделение нескольких
этапов при выполнении операции).этапов при выполнении операции).
 Параллельность (наличие несколькихПараллельность (наличие нескольких
функционально независимых устройств).функционально независимых устройств).
Закон АмдалаЗакон Амдала
(зависимость коэффициента ускорения от числа(зависимость коэффициента ускорения от числа
процессоров и степени параллелизма алгоритмапроцессоров и степени параллелизма алгоритма
(относительной доли параллельной части)(относительной доли параллельной части)
где: S – ускорение, f – доля операций, которые нужногде: S – ускорение, f – доля операций, которые нужно
выполнить последовательно, p – число процессоров.выполнить последовательно, p – число процессоров.
Следствие из закона АмдалаСледствие из закона Амдала::
Для того, чтобы ускорить выполнение программы вДля того, чтобы ускорить выполнение программы в
q раз, необходимо ускорить не менее чем в q раз, неq раз, необходимо ускорить не менее чем в q раз, не
менее чем (1-1/q)-ую часть программы.менее чем (1-1/q)-ую часть программы.
pff
S
/)1(
1
−+
≤
Классификация ЭВМ по ФлиннуКлассификация ЭВМ по Флинну
Одной из наиболее известных схем классификацииОдной из наиболее известных схем классификации
компьютерных архитектур являетсякомпьютерных архитектур является таксономия Флинна,таксономия Флинна,
предложенная Майклом Флинном в 1972 году.предложенная Майклом Флинном в 1972 году. ВВ ееее
основу положено описание работы компьютера соснову положено описание работы компьютера с
потоками команд и данныхпотоками команд и данных..
В классификации Флинна имеется четыре классаВ классификации Флинна имеется четыре класса
архитектур:архитектур:
1.1. SISDSISD (Single Instruction Stream — Single Data Stream) —(Single Instruction Stream — Single Data Stream) —
один поток команд и один поток данных.один поток команд и один поток данных.
2.2. SIMDSIMD (Single Instruction Stream — Multiple Data Stream)(Single Instruction Stream — Multiple Data Stream)
— один поток команд и несколько потоков данных.— один поток команд и несколько потоков данных.
3.3. MISDMISD (Multiple Instruction Stream — Single Data Stream)(Multiple Instruction Stream — Single Data Stream)
— несколько потоков команд и один поток данных.— несколько потоков команд и один поток данных.
4.4. MIMDMIMD (Multiple Instruction Stream — Multiple Data Stream)(Multiple Instruction Stream — Multiple Data Stream)
— несколько потоков команд и несколько потоков данных.— несколько потоков команд и несколько потоков данных.
SISD-компьютерыSISD-компьютеры
SISD-компьютерыSISD-компьютеры — это обычные— это обычные
последовательные компьютеры,последовательные компьютеры, выполняющие ввыполняющие в
каждый момент времени только одну операцию надкаждый момент времени только одну операцию над
одним элементом данныходним элементом данных..
SIМD-компьютерыSIМD-компьютеры
SIMD-компьютеры состоят из одного командногоSIMD-компьютеры состоят из одного командного
процессорапроцессора (управляющего модуля), называемого(управляющего модуля), называемого
контроллером,контроллером, и нескольких модулей обработкии нескольких модулей обработки
данныхданных, называемых процессорными элементами (ПЭ)., называемых процессорными элементами (ПЭ).
Количество модулей обработки данных таких машин можетКоличество модулей обработки данных таких машин может
быть от 1024 до 16 384.быть от 1024 до 16 384.
Процессорные элементы в SIMD-компьютерах имеютПроцессорные элементы в SIMD-компьютерах имеют
относительно простое устройство, они содержатотносительно простое устройство, они содержат
арифметико-логическое устройство (АЛУ), выполняющееарифметико-логическое устройство (АЛУ), выполняющее
команды, поступающие из устройства управления (УУ),команды, поступающие из устройства управления (УУ),
несколько регистров и локальную оперативную память.несколько регистров и локальную оперативную память.
В SIMD-компьютере управление выполняетсяВ SIMD-компьютере управление выполняется
контроллером, а "арифметика" отдана процессорнымконтроллером, а "арифметика" отдана процессорным
элементам.элементам. Подклассом SIMD-компьютеров являютсяПодклассом SIMD-компьютеров являются
векторные компьютерывекторные компьютеры. Пример такой вычислительной. Пример такой вычислительной
системы — Hitachi S3600.системы — Hitachi S3600. Другой пример SIMD-Другой пример SIMD-
компьютера — матричные процессорыкомпьютера — матричные процессоры (Array Processor).(Array Processor).
Схема SIMD- компьютера сСхема SIMD- компьютера с
разделяемой памятьюразделяемой памятью
Схема SIMD-компьютера сСхема SIMD-компьютера с
распределенной памятьюраспределенной памятью
MISD-компьютерыMISD-компьютеры
Вычислительных машин такого класса мало. Один изВычислительных машин такого класса мало. Один из
немногих примеров - систолический массив процессоров, внемногих примеров - систолический массив процессоров, в
котором процессоры находятся в узлах регулярной решетки.котором процессоры находятся в узлах регулярной решетки.
Роль ребер в ней играют межпроцессорные соединения, всеРоль ребер в ней играют межпроцессорные соединения, все
ПЭ управляются общим тактовым генератором. В каждомПЭ управляются общим тактовым генератором. В каждом
цикле работы любой ПЭ получает данные от своих соседей,цикле работы любой ПЭ получает данные от своих соседей,
выполняет одну команду и передает результат соседям. Навыполняет одну команду и передает результат соседям. На
рисунке дана схема фрагмента систолического массива.рисунке дана схема фрагмента систолического массива.
MIMD-компьютерыMIMD-компьютеры
Этот класс архитектур наиболее богат примерамиЭтот класс архитектур наиболее богат примерами
успешных реализаций. В него попадаютуспешных реализаций. В него попадают симметричныесимметричные
параллельные вычислительные системы, рабочиепараллельные вычислительные системы, рабочие
станции с несколькими процессорами, кластерыстанции с несколькими процессорами, кластеры
рабочих станций ирабочих станций и т. д. Довольно давно появилисьт. д. Довольно давно появились
компьютеры с несколькими независимыми процессорами,компьютеры с несколькими независимыми процессорами,
но вначале на них был реализован только принципно вначале на них был реализован только принцип
параллельного исполнения заданий, т. е. на разныхпараллельного исполнения заданий, т. е. на разных
процессорах одновременно выполнялись независимыепроцессорах одновременно выполнялись независимые
программы.программы.
В начале 90-х годов прошлого века именно MIMD-В начале 90-х годов прошлого века именно MIMD-
компьютеры вышли в лидеры на рынкекомпьютеры вышли в лидеры на рынке
высокопроизводительных вычислительных систем.высокопроизводительных вычислительных систем.
Схема MIMD-компьютераСхема MIMD-компьютера
с разделяемой памятьюс разделяемой памятью
Схема MIMD-компьютера сСхема MIMD-компьютера с
распределенной памятьюраспределенной памятью
Имеются и гибридные конфигурации, в которых,Имеются и гибридные конфигурации, в которых,
например, объединены несколько SIMD-компьютеров, внапример, объединены несколько SIMD-компьютеров, в
результате чего получается MSIMD-компьютер,результате чего получается MSIMD-компьютер,
позволяющий создавать виртуальные конфигурации,позволяющий создавать виртуальные конфигурации,
каждая из которых работает в SIMD-режиме.каждая из которых работает в SIMD-режиме.
Классификация Флинна не дает исчерпывающегоКлассификация Флинна не дает исчерпывающего
описания разнообразных архитектур MIMD-машин, поройописания разнообразных архитектур MIMD-машин, порой
существенно отличающихся друг от друга.существенно отличающихся друг от друга. ЧастоЧасто
используется классификация, в которой за основуиспользуется классификация, в которой за основу
берется способ взаимодействия процессоров сберется способ взаимодействия процессоров с
оперативной памятью.оперативной памятью. Например, существуют такиеНапример, существуют такие
подклассы MIMD-компьютеров, какподклассы MIMD-компьютеров, как системы ссистемы с
разделяемой памятью и системы с распределеннойразделяемой памятью и системы с распределенной
памятью.памятью. Системы с разделяемой памятью могутСистемы с разделяемой памятью могут
относиться по классификации Флинна как к MIMD, так и котноситься по классификации Флинна как к MIMD, так и к
SIMD-машинам. То же самое можно сказать и о системах сSIMD-машинам. То же самое можно сказать и о системах с
распределенной памятью.распределенной памятью.
Классификация по способуКлассификация по способу
взаимодействия процессоров свзаимодействия процессоров с
оперативной памятьюоперативной памятью
В этой схеме выделяют три основные группыВ этой схеме выделяют три основные группы
архитектур:архитектур:
- с разделяемой памятью;- с разделяемой памятью;
- с распределенной памятью;- с распределенной памятью;
- с- с распределенно-разделяемой памятью.распределенно-разделяемой памятью.
Основным свойством систем с разделяемойОсновным свойством систем с разделяемой
памятью является то, что все процессоры системыпамятью является то, что все процессоры системы
имеют доступ к одной оперативной памяти, используяимеют доступ к одной оперативной памяти, используя
единое адресное пространствоединое адресное пространство. Обычно главная память. Обычно главная память
состоит из нескольких модулей памяти (их число несостоит из нескольких модулей памяти (их число не
обязательно совпадает с числом процессоров).обязательно совпадает с числом процессоров).
В такой системе связь между процессорамиВ такой системе связь между процессорами
выполняется с помощью разделяемых переменных. Этотвыполняется с помощью разделяемых переменных. Этот
тип параллельных компьютеров называют такжетип параллельных компьютеров называют также
компьютерамикомпьютерами с однородным доступом к памятис однородным доступом к памяти ии
обозначают английской аббревиатуройобозначают английской аббревиатурой UMA (UniformUMA (Uniform
Memory Access),Memory Access), поскольку параметры доступа к модулямпоскольку параметры доступа к модулям
памяти для всех процессоров одинаковы.памяти для всех процессоров одинаковы.
Преимуществом компьютеров с разделяемойПреимуществом компьютеров с разделяемой
памятью является удобство программированияпамятью является удобство программирования длядля
них, поскольку все данные доступны всем процессорам, иних, поскольку все данные доступны всем процессорам, и
не надо заботиться о пересылках данных. Синхронизациюне надо заботиться о пересылках данных. Синхронизацию
обеспечивает сама система. Однако на компьютерах собеспечивает сама система. Однако на компьютерах с
разделяемой памятьюразделяемой памятью сложно достичь параллелизмасложно достичь параллелизма
высокого уровнявысокого уровня, поскольку большинство таких систем, поскольку большинство таких систем
содержат менее 64 процессоровсодержат менее 64 процессоров. Это ограничение. Это ограничение
следует из плохой масштабируемости централизованнойследует из плохой масштабируемости централизованной
памяти и системы коммуникаций.памяти и системы коммуникаций.
В случае компьютера с распределенной памятьюВ случае компьютера с распределенной памятью
каждый процессор имеет собственную оперативнуюкаждый процессор имеет собственную оперативную
памятьпамять. Глобального адресного пространства в этом. Глобального адресного пространства в этом
случае уже нет. Коммуникации и синхронизацияслучае уже нет. Коммуникации и синхронизация
процессоров осуществляются с помощью обменапроцессоров осуществляются с помощью обмена
сообщениями по коммуникационной сети.сообщениями по коммуникационной сети.
В отличие от систем с разделяемой памятьюВ отличие от систем с разделяемой памятью системы ссистемы с
распределенной памятью очень хорошораспределенной памятью очень хорошо
масштабируютсямасштабируются, поскольку в этом случае исключены, поскольку в этом случае исключены
конфликты по доступу к памяти. В результате могутконфликты по доступу к памяти. В результате могут
создаваться системы с высокой степенью параллелизмасоздаваться системы с высокой степенью параллелизма
(МРР — Massively Parallel Processors), состоящие из(МРР — Massively Parallel Processors), состоящие из
сотен и тысяч процессоровсотен и тысяч процессоров. Типичными. Типичными
представителями систем с распределенной памятьюпредставителями систем с распределенной памятью
являются кластеры рабочих станций, объединенныеявляются кластеры рабочих станций, объединенные
коммуникационной сетью достаточно дешевой, нокоммуникационной сетью достаточно дешевой, но
обеспечивающей приемлемую скорость обмена даннымиобеспечивающей приемлемую скорость обмена данными
(Ethernet, Myrinet и др.).(Ethernet, Myrinet и др.).
В системах с распределенно-разделяемойВ системах с распределенно-разделяемой
памятьюпамятью используются преимущества обоих подходов.используются преимущества обоих подходов.
Это относительная простота программирования с однойЭто относительная простота программирования с одной
стороны, хорошая масштабируемость с другой.стороны, хорошая масштабируемость с другой.
Каждый процессор имеет собственную локальнуюКаждый процессор имеет собственную локальную
памятьпамять, но, в отличие от архитектуры с распределенной, но, в отличие от архитектуры с распределенной
памятью,памятью, все модули памяти образуют единоевсе модули памяти образуют единое
адресное пространствоадресное пространство, т. е. каждая ячейка памяти, т. е. каждая ячейка памяти
имеет адрес, единый для всей системы.имеет адрес, единый для всей системы.
Для самостоятельного изучения
Чаще всего аналитики выделяют как актуальные
следующие четыре направления
архитектурных решений:
1) векторно-конвейерные системы,
2) массивно-параллельные системы с
распределенной памятью (MPP массивно-параллельная
архитектура – massive parallel processing),
3) параллельные системы с общей памятью,
4) кластерную архитектуру.
1. Массивно-параллельные1. Массивно-параллельные
системы (MPP)системы (MPP)
АрхитектураАрхитектура
Система состоит из однородныхСистема состоит из однородных вычислительных узловвычислительных узлов,,
включающих:включающих:
один или несколько центральных процессоров (обычноодин или несколько центральных процессоров (обычно
RISC),RISC),
локальную памятьлокальную память (прямой доступ к памяти других(прямой доступ к памяти других
узлов невозможен),узлов невозможен),
коммуникационный процессор или сетевой адаптеркоммуникационный процессор или сетевой адаптер
иногда - жесткие диски (как в SP) и/или другиеиногда - жесткие диски (как в SP) и/или другие
устройства в/в.устройства в/в.
К системе могут быть добавлены специальные узлыК системе могут быть добавлены специальные узлы
ввода-вывода и управляющие узлы. Узлы связаны черезввода-вывода и управляющие узлы. Узлы связаны через
некоторую коммуникационную среду (высокоскоростная сеть,некоторую коммуникационную среду (высокоскоростная сеть,
коммутатор и т.п.)коммутатор и т.п.)
Примеры:Примеры: IBM RS/6000IBM RS/6000 SP2SP2, Intel PARAGON/ASCI Red,Intel PARAGON/ASCI Red,
CRAYCRAY T3ET3E, HitachiHitachi SR8000SR8000, транспьютерные системытранспьютерные системы ParsytecParsytec
..
CRAY T3DCRAY T3D
Cray T3D и T3E используют единое адресноеCray T3D и T3E используют единое адресное
пространство (общая виртуальная память). Попространство (общая виртуальная память). По
аппаратному прерыванию особого случая адресации ОСаппаратному прерыванию особого случая адресации ОС
выполняет пересылку страницы с одного узла на другой.выполняет пересылку страницы с одного узла на другой.
У каждого МП своя локальная память, но единоеУ каждого МП своя локальная память, но единое
виртуальное адресное пространство.виртуальное адресное пространство.
Cray T3D (32-2048 МП)Cray T3D (32-2048 МП)
хост-машинахост-машина
Сеть межпроцессорного
взаимодействия
(коммуникационная сеть)
140 Мбайт/с
Вычислительные узлы Узлы ввода/вывода
2 ПЭ
МП Локальная
Несколько
вспомогательных схем
Сетевой
интерфейс
Контроллер
блочных
передач
МасштабируемостьМасштабируемость
Общее число процессоров в реальных системахОбщее число процессоров в реальных системах
достигает нескольких тысяч (ASCI Red, Blue Mountain).достигает нескольких тысяч (ASCI Red, Blue Mountain).
Операционная системаОперационная система
Существуют два основных варианта:Существуют два основных варианта:
 Полноценная ОС работает только на управляющейПолноценная ОС работает только на управляющей
машине (front-end), на каждом узле работает сильномашине (front-end), на каждом узле работает сильно
урезанный вариант ОС, обеспечивающие только работуурезанный вариант ОС, обеспечивающие только работу
расположенной в нем ветви параллельного приложения.расположенной в нем ветви параллельного приложения.
Пример: Cray T3E.Пример: Cray T3E.
 На каждом узле работает полноценная UNIX-На каждом узле работает полноценная UNIX-
подобная ОС (вариант, близкий кподобная ОС (вариант, близкий к кластерномукластерному подходу).подходу).
Пример: IBM RS/6000 SP + ОС AIX, устанавливаемаяПример: IBM RS/6000 SP + ОС AIX, устанавливаемая
отдельно на каждом узле.отдельно на каждом узле.
Модель программированияМодель программирования
Программирование в рамках модели передачиПрограммирование в рамках модели передачи
сообщений (сообщений ( MPIMPI, PVM, BSPlib)
2. Симметричные2. Симметричные
мультипроцессорные системы (SMP)мультипроцессорные системы (SMP)
АрхитектураАрхитектура
Система состоит из нескольких однородныхСистема состоит из нескольких однородных
процессоров ипроцессоров и массива общей памятимассива общей памяти (обычно из(обычно из
нескольких независимых блоков). Все процессоры имеютнескольких независимых блоков). Все процессоры имеют
доступ к любой точке памяти с одинаковой скоростью.доступ к любой точке памяти с одинаковой скоростью.
Процессоры подключены к памяти либо с помощью общейПроцессоры подключены к памяти либо с помощью общей
шины (базовые 2-4 процессорные SMP-сервера), либо сшины (базовые 2-4 процессорные SMP-сервера), либо с
помощью crossbar-коммутатора (HP 9000). Аппаратнопомощью crossbar-коммутатора (HP 9000). Аппаратно
поддерживается когерентность кэшей.поддерживается когерентность кэшей.
Примеры:Примеры: HP 9000 V-classHP 9000 V-class, N-class; SMP-cервера и, N-class; SMP-cервера и
рабочие станции на базе процессоров Intel (IBM, HP,рабочие станции на базе процессоров Intel (IBM, HP,
Compaq, Dell, ALR, Unisys, DG, Fujitsu и др.).Compaq, Dell, ALR, Unisys, DG, Fujitsu и др.).
МасштабируемостьМасштабируемость
Наличие общей памяти сильно упрощаетНаличие общей памяти сильно упрощает
взаимодействие процессоров между собой, однаковзаимодействие процессоров между собой, однако
накладывает сильные ограничения на их число - ненакладывает сильные ограничения на их число - не
более 32 в реальных системах. Для построенияболее 32 в реальных системах. Для построения
масштабируемых систем на базе SMP используютсямасштабируемых систем на базе SMP используются
кластерныекластерные илиили NUMANUMA-архитектуры.-архитектуры.
Операционная системаОперационная система
Вся система работает под управлением единой ОСВся система работает под управлением единой ОС
(обычно UNIX-подобной, но для Intel-платформ(обычно UNIX-подобной, но для Intel-платформ
поддерживается Windows NT). ОС автоматически (вподдерживается Windows NT). ОС автоматически (в
процессе работы) распределяет процессы/нити попроцессе работы) распределяет процессы/нити по
процессорам, но иногда возможна и явная привязка.процессорам, но иногда возможна и явная привязка.
Модель программированияМодель программирования
Программирование в моделиПрограммирование в модели общей памятиобщей памяти. (POSIX. (POSIX
threads,threads, OpenMPOpenMP). Для SMP-систем существуютДля SMP-систем существуют
сравнительно эффективные средствасравнительно эффективные средства
автоматического распараллеливанияавтоматического распараллеливания.
3. Системы с неоднородным3. Системы с неоднородным
доступом к памяти (NUMA)доступом к памяти (NUMA)
АрхитектураАрхитектура
Система состоит из однородных базовых модулейСистема состоит из однородных базовых модулей
(плат), состоящих из небольшого числа процессоров и(плат), состоящих из небольшого числа процессоров и
блока памяти. Модули объединены с помощьюблока памяти. Модули объединены с помощью
высокоскоростного коммутатора. Поддерживаетсявысокоскоростного коммутатора. Поддерживается
единое адресное пространствоединое адресное пространство, аппаратно, аппаратно
поддерживается доступ к удаленной памяти, т.е. к памятиподдерживается доступ к удаленной памяти, т.е. к памяти
других модулей.других модулей. При этом доступ к локальной памяти вПри этом доступ к локальной памяти в
несколько раз быстрее, чем к удаленнойнесколько раз быстрее, чем к удаленной. В случае, если. В случае, если
аппаратно поддерживается когерентность кэшей во всейаппаратно поддерживается когерентность кэшей во всей
системе (обычно это так), говорят об архитектуре cc-системе (обычно это так), говорят об архитектуре cc-
NUMA (cache-coherent NUMA).NUMA (cache-coherent NUMA).
Примеры:Примеры: HPHP HP 9000 V-classHP 9000 V-class в SCA-конфигурациях,в SCA-конфигурациях,
SGISGI Origin2000Origin2000, SunSun HPC 10000HPC 10000, IBM/Sequent, IBM/Sequent
NUMA-Q 2000NUMA-Q 2000, SNI, SNI RM600RM600.
МасштабируемостьМасштабируемость
Масштабируемость NUMA-систем ограничиваетсяМасштабируемость NUMA-систем ограничивается
объемом адресного пространства, возможностямиобъемом адресного пространства, возможностями
аппаратуры поддержки когерентности кэшей иаппаратуры поддержки когерентности кэшей и
возможностями операционной системы по управлениювозможностями операционной системы по управлению
большим числом процессоров. На настоящий момент,большим числом процессоров. На настоящий момент,
максимальное число процессоров в NUMA-системахмаксимальное число процессоров в NUMA-системах
составляет 256 (Origin2000).составляет 256 (Origin2000).
Операционная системаОперационная система
Обычно вся система работает под управлениемОбычно вся система работает под управлением
единой ОС, как вединой ОС, как в SMPSMP. Но возможны также варианты. Но возможны также варианты
динамического "подразделения" системы, когдадинамического "подразделения" системы, когда
отдельные "разделы" системы работают подотдельные "разделы" системы работают под
управлением разных ОС (например, Windows NT и UNIXуправлением разных ОС (например, Windows NT и UNIX
в NUMA-Q 2000).в NUMA-Q 2000).
Модель программированияМодель программирования
АналогичноАналогично SMP.
4. Параллельные векторные4. Параллельные векторные
системы (PVP)системы (PVP)
АрхитектураАрхитектура
Основным признаком PVP-систем является наличиеОсновным признаком PVP-систем является наличие
специальных векторно-конвейерных процессоров, вспециальных векторно-конвейерных процессоров, в
которых предусмотрены команды однотипной обработкикоторых предусмотрены команды однотипной обработки
векторов независимых данных, эффективновекторов независимых данных, эффективно
выполняющиеся на конвейерных функциональныхвыполняющиеся на конвейерных функциональных
устройствах. Как правило, несколько таких процессоров (1-устройствах. Как правило, несколько таких процессоров (1-
16) работают одновременно16) работают одновременно над общей памятьюнад общей памятью
(аналогично(аналогично SMPSMP) в рамках многопроцессорныхв рамках многопроцессорных
конфигураций. Несколько таких узлов могут бытьконфигураций. Несколько таких узлов могут быть
объединены с помощью коммутатора (аналогичнообъединены с помощью коммутатора (аналогично MPPMPP).).
Примеры:Примеры: NEC SX-4/NEC SX-4/SX-5SX-5, линия векторно-, линия векторно-
конвейерных компьютеров CRAY: от CRAY-1, CRAYконвейерных компьютеров CRAY: от CRAY-1, CRAY
J90/T90, CRAY SV1, CRAY X1, серия Fujitsuсерия Fujitsu VPP..
Модель программированияМодель программирования
Эффективное программированиеЭффективное программирование подразумевает:подразумевает:
векторизацию циклов (для достижения разумнойвекторизацию циклов (для достижения разумной
производительности одного процессора);производительности одного процессора);
и их распараллеливание (для одновременнойи их распараллеливание (для одновременной
загрузки нескольких процессоров однимзагрузки нескольких процессоров одним
приложением).приложением).
CRAY Y-MP C90CRAY Y-MP C90
1.1. 16 МП, t16 МП, tтактатакта = 4,1 нс, f= 4,1 нс, fт.ч.=т.ч.=250 МГц.250 МГц.
2.2. Разделяемые ресурсы процессора:Разделяемые ресурсы процессора:
 ОПОП разделяется всеми МП и секцией ввода/вывода. ОПразделяется всеми МП и секцией ввода/вывода. ОП
разделена на множество банков, которые могут работатьразделена на множество банков, которые могут работать
одновременно.одновременно.
 Секция ввода/вывода:Секция ввода/вывода:
Low-Speed Channels – 6 Мбайт/сLow-Speed Channels – 6 Мбайт/с
High-Speed Channels – 200 Мбайт/сHigh-Speed Channels – 200 Мбайт/с
Very High-Speed Channels – 1800 Мбайт/сVery High-Speed Channels – 1800 Мбайт/с
 Секция межпроцессорного взаимодействияСекция межпроцессорного взаимодействия содержитсодержит
регистры и семафоры, предназначенные для передачи данныхрегистры и семафоры, предназначенные для передачи данных
и управляющей информации.и управляющей информации.
1.1. Вычислительная секция процессораВычислительная секция процессора
 Регистры (адресные, скалярные, векторные).Регистры (адресные, скалярные, векторные).
 Функциональные устройства.Функциональные устройства.
 Сети коммуникаций.Сети коммуникаций.
1.1. Секция управления. Команды выбираются из ОП блоками иСекция управления. Команды выбираются из ОП блоками и
заносятся в буфера команд.заносятся в буфера команд.
2.2. Параллельное выполнение программ.Параллельное выполнение программ.
Факторы, снижающиеФакторы, снижающие
производительностьпроизводительность
параллельных компьютеровпараллельных компьютеров
1.1.Закон Амдала.Закон Амдала.
В таблице показано, на какое максимальное ускорениеВ таблице показано, на какое максимальное ускорение
работы программы можно рассчитывать в зависимости отработы программы можно рассчитывать в зависимости от
доли последовательных вычислений и числа доступныхдоли последовательных вычислений и числа доступных
ПЭ.ПЭ.
ЧислоЧисло
ПЭПЭ
Доля последовательных вычисленийДоля последовательных вычислений
50%50% 25%25% 10%10% 5%5% 2%2%
22 1.331.33 1.601.60 1.821.82 1.901.90 1.961.96
88 1.781.78 2.912.91 4.714.71 5.935.93 7.027.02
3232 1.941.94 3.663.66 7.807.80 12.5512.55 19.7519.75
512512 1.991.99 3.973.97 9.839.83 19.2819.28 45.6345.63
2.2. Время инициализации посылки сообщенияВремя инициализации посылки сообщения
(латентность)(латентность) ии передачи сообщения по сетипередачи сообщения по сети..
Максимальная скорость передачи достигается наМаксимальная скорость передачи достигается на
больших сообщениях, когда латентность, возникающаябольших сообщениях, когда латентность, возникающая
лишь вначале, не столь заметна на фоне непосредственнолишь вначале, не столь заметна на фоне непосредственно
передачи данных.передачи данных.
3.3. Возможность асинхронной посылки сообщений иВозможность асинхронной посылки сообщений и
вычисленийвычислений..
Если или аппаратура, или программное обеспечение неЕсли или аппаратура, или программное обеспечение не
поддерживают возможности проводить вычисления наподдерживают возможности проводить вычисления на
фоне пересылок, то возникнут неизбежные накладныефоне пересылок, то возникнут неизбежные накладные
расходы, связанные с ожиданием полного завершениярасходы, связанные с ожиданием полного завершения
взаимодействия параллельных процессов.взаимодействия параллельных процессов.
4.4. Неравномерная загрузка всех процессорныхНеравномерная загрузка всех процессорных
элементов.элементов.
5.5. Время ожидания прихода сообщенияВремя ожидания прихода сообщения..
6.6. Реальная производительность одногоРеальная производительность одного
5. Кластерные системы5. Кластерные системы
АрхитектураАрхитектура
Набор рабочих станций (или даже ПК) общегоНабор рабочих станций (или даже ПК) общего
назначения, используется в качестве дешевого вариантаназначения, используется в качестве дешевого варианта
массивно-параллельного компьютера. Для связи узловкомпьютера. Для связи узлов
используется одна из стандартных сетевых технологийиспользуется одна из стандартных сетевых технологий
(Fast/Gigabit Ethernet, Myrinet) на базе шинной архитектуры(Fast/Gigabit Ethernet, Myrinet) на базе шинной архитектуры
или коммутатора. При объединении в кластерили коммутатора. При объединении в кластер
компьютеров разной мощности или разной архитектуры,компьютеров разной мощности или разной архитектуры,
говорят оговорят о гетерогенныхгетерогенных (неоднородных) кластерах.(неоднородных) кластерах.
Узлы кластера могут одновременно использоваться вУзлы кластера могут одновременно использоваться в
качестве пользовательских рабочих станций. В случае,качестве пользовательских рабочих станций. В случае,
когда это не нужно, узлы могут быть существеннокогда это не нужно, узлы могут быть существенно
облегчены и/или установлены в стойку.облегчены и/или установлены в стойку.
Примеры:Примеры: NT-кластер в NCSA,в NCSA, Beowulf-кластеры,-кластеры,
CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5,CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5,
последние модели IBM SP2.
Операционная системаОперационная система
Используются стандартные для рабочих станций ОС,Используются стандартные для рабочих станций ОС,
чаще всего, свободно распространяемые - Linux/FreeBSD,чаще всего, свободно распространяемые - Linux/FreeBSD,
вместе со специальными средствами поддержкивместе со специальными средствами поддержки
параллельного программирования и распределенияпараллельного программирования и распределения
нагрузки.нагрузки.
Модель программированияМодель программирования
Программирование, как правило, в рамках моделиПрограммирование, как правило, в рамках модели
передачи сообщений (чаще всего - MPI). Дешевизнапередачи сообщений (чаще всего - MPI). Дешевизна
подобных систем оборачивается большими накладнымиподобных систем оборачивается большими накладными
расходами на взаимодействие параллельных процессоврасходами на взаимодействие параллельных процессов
между собой, что сильно сужает потенциальный классмежду собой, что сильно сужает потенциальный класс
решаемых задач.решаемых задач.
6. Суперкомпьютеры на базе FPGA6. Суперкомпьютеры на базе FPGA
ЭкспериментальныйЭкспериментальный суперкомпьютер, способныйсуперкомпьютер, способный
самостоятельно изменять собственнуюсамостоятельно изменять собственную
конфигурациюконфигурацию, создан в Шотландии., создан в Шотландии. В основеВ основе
суперкомпьютерасуперкомпьютера — уже не обычные микропроцессоры,— уже не обычные микропроцессоры,
а так называемые «программируемые матрицы ключей»,а так называемые «программируемые матрицы ключей»,
илиили «программируемые логические матрицы» FPGA«программируемые логические матрицы» FPGA
(Field Programmable Gate Array).(Field Programmable Gate Array).
Особенностью решения на базе FPGA является егоОсобенностью решения на базе FPGA является его
исключительно высокая производительность наисключительно высокая производительность на
некоторых задачахнекоторых задачах (по данным источника, прирост(по данным источника, прирост
производительности может доходить до 10 -100 раз попроизводительности может доходить до 10 -100 раз по
сравнению с обычными процессорами). Кроме того,сравнению с обычными процессорами). Кроме того, FPGAFPGA
потребляют заметно меньше энергиипотребляют заметно меньше энергии. Так. Так компьютеркомпьютер
производительностью 1 терафлоппроизводительностью 1 терафлоп, на 64, на 64
вычислительных модуля на основе FPGAвычислительных модуля на основе FPGA будетбудет
потреблять лишь 1% энергии,потреблять лишь 1% энергии, требуемойтребуемой
суперкомпьютеру стандартной архитектуры с той жесуперкомпьютеру стандартной архитектуры с той же
производительностью.производительностью.
Конфигурацию устройств FPGA можно менятьКонфигурацию устройств FPGA можно менять
программным образом, что дает возможностьпрограммным образом, что дает возможность
«настраивать» вычислительную систему для решения«настраивать» вычислительную систему для решения
конкретной задачиконкретной задачи — в отличие от микропроцессоров,— в отличие от микропроцессоров,
которые представляют собой вычислительные устройствакоторые представляют собой вычислительные устройства
с жесткой, раз и навсегда заданной конфигурацией.с жесткой, раз и навсегда заданной конфигурацией.
Каждый чип FPGA включает блок программируемойКаждый чип FPGA включает блок программируемой
логики, позволяющей менять схемотехнику устройства.логики, позволяющей менять схемотехнику устройства.
Основная проблема — это разработкаОсновная проблема — это разработка
технологии, которая позволиттехнологии, которая позволит
программировать их.программировать их.
За небольшими компаниями, имеющимиЗа небольшими компаниями, имеющими
эффективные инновационные технологии, ведутэффективные инновационные технологии, ведут
постоянную “охоту” компании – гиганты, стараясь ихпостоянную “охоту” компании – гиганты, стараясь их
выкупить вместе с соответствующимивыкупить вместе с соответствующими
интеллектуальными активами, присоединив к себе. Так,интеллектуальными активами, присоединив к себе. Так,
компания Cray в 2004 году приобрела небольшуюкомпания Cray в 2004 году приобрела небольшую
канадскую компанию OctigaBay, которая создалаканадскую компанию OctigaBay, которая создала
эффективные акселераторы приложений на базеэффективные акселераторы приложений на базе
ПЛИСПЛИС VirtexII Pro. КомпанияVirtexII Pro. Компания Cray внедрила этиCray внедрила эти
акселераторы в свой суперкомпьютер XD1акселераторы в свой суперкомпьютер XD1,,
использовав уже новые ПЛИС Xilinx Virtex-4 по 6 штук виспользовав уже новые ПЛИС Xilinx Virtex-4 по 6 штук в
каждой стойке системы XD1. Cray в новыхкаждой стойке системы XD1. Cray в новых
суперкомпьютерах планирует подключатьсуперкомпьютерах планирует подключать
вспомогательный DRC FPGA чип непосредственно ввспомогательный DRC FPGA чип непосредственно в
сокет Opteron-процессора. Это создаст ряд преимуществсокет Opteron-процессора. Это создаст ряд преимуществ
для пользователей разъема CraySeaStar.для пользователей разъема CraySeaStar.
22 марта 2007 года22 марта 2007 года
Специалисты Эдинбургского университетаСпециалисты Эдинбургского университета
(Шотландия) завершили строительство(Шотландия) завершили строительство
экспериментального суперкомпьютера с изменяемойэкспериментального суперкомпьютера с изменяемой
архитектурой. Вычислительная система, как сообщаетархитектурой. Вычислительная система, как сообщает
ZDNet, получила название Maxwell.ZDNet, получила название Maxwell.
В суперкомпьютере Maxwell вместо традиционныхВ суперкомпьютере Maxwell вместо традиционных
микропроцессоров используются перепрограммируемыемикропроцессоров используются перепрограммируемые
логические интегральные схемы (FPGA). Конфигурациюлогические интегральные схемы (FPGA). Конфигурацию
FPGA можно менять при помощи специализированныхFPGA можно менять при помощи специализированных
программных средств, адаптируя таким образом системупрограммных средств, адаптируя таким образом систему
для решения строго определенных задач. Правда,для решения строго определенных задач. Правда,
перепрограммирование суперкомпьютера на базе FPGAперепрограммирование суперкомпьютера на базе FPGA
представляет собой очень сложный процесс, чтопредставляет собой очень сложный процесс, что
затрудняет коммерческое использование подобныхзатрудняет коммерческое использование подобных
комплексов.комплексов.
По словам Марка Парсонса, руководителя проектаПо словам Марка Парсонса, руководителя проекта
Maxwell, в процессе тестирования экспериментальнаяMaxwell, в процессе тестирования экспериментальная
система использовалась для проведения сложныхсистема использовалась для проведения сложных
расчетов в финансовой и медицинской сферах. При этомрасчетов в финансовой и медицинской сферах. При этом
комплекс продемонстрировал в 300 раз болеекомплекс продемонстрировал в 300 раз более
высокую производительность и в 10 раз меньшеевысокую производительность и в 10 раз меньшее
энергопотребление по сравнению со стандартнымиэнергопотребление по сравнению со стандартными
вычислительными центрами.вычислительными центрами.
РазработкаРазработка суперкомпьютерасуперкомпьютера Maxwell длилась дваMaxwell длилась два
года и обошлась в семь миллионов долларов США.года и обошлась в семь миллионов долларов США.
Помощь в создании специализированных средствПомощь в создании специализированных средств
программирования шотландским ученым оказывалипрограммирования шотландским ученым оказывали
исследователи альянса FHPCA (FPGA High Performanceисследователи альянса FHPCA (FPGA High Performance
Computing Alliance). Парсонс считает, что в течениеComputing Alliance). Парсонс считает, что в течение
ближайших двух-трех лет интерес к вычислительнымближайших двух-трех лет интерес к вычислительным
комплексам на основе перепрограммируемых логическихкомплексам на основе перепрограммируемых логических
интегральных схем может существенно вырасти. Кстати,интегральных схем может существенно вырасти. Кстати,
схемы FPGA уже используют в своей продукциисхемы FPGA уже используют в своей продукции
некоторые компании, в частности, Cray.некоторые компании, в частности, Cray.
Описание FPGA-суперкомпьютераОписание FPGA-суперкомпьютера
MaxwellMaxwell
Maxwell является высокопроизводительнымMaxwell является высокопроизводительным
реконфигурируемым компьютером, разработаннымреконфигурируемым компьютером, разработанным
альянсом FHPCA для демонстрации возможностейальянсом FHPCA для демонстрации возможностей
создания вычислительных приложений на базе ПЛИС-создания вычислительных приложений на базе ПЛИС-
технологий.технологий.
Физически MaxwellФизически Maxwell состоит из 32 блейд-серверовсостоит из 32 блейд-серверов,,
управляемых при помощи IBM Blade Center. Каждыйуправляемых при помощи IBM Blade Center. Каждый
сервер содержит одинсервер содержит один обычный процессоробычный процессор Intel XeonIntel Xeon сс
тактовой частотойтактовой частотой 2.8 ГГц с 1 ГБ ОЗУ2.8 ГГц с 1 ГБ ОЗУ, а также, а также 2 ПЛИС-2 ПЛИС-
платыплаты различных типов. Один тип ПЛИС-платыразличных типов. Один тип ПЛИС-платы
разрабатывается фирмой Alpha Data, а другой - фирмойразрабатывается фирмой Alpha Data, а другой - фирмой
Nallatech (обе входят в состав FHPCA).Nallatech (обе входят в состав FHPCA). Платы сделаныПлаты сделаны
на основе ПЛИС Xilinx Virtex-4на основе ПЛИС Xilinx Virtex-4 и соединяются с основными соединяются с основным
процессором при помощи интерфейса IBM PCI-X (непроцессором при помощи интерфейса IBM PCI-X (не
путать с PCI Express!). Платы Alpha Data ADM-XRC-4FXпутать с PCI Express!). Платы Alpha Data ADM-XRC-4FX
содержатсодержат 16 МБ статической памяти и 1ГБ16 МБ статической памяти и 1ГБ
динамической памятидинамической памяти (на плату), в то время как платы(на плату), в то время как платы
Nallatech H101Nallatech H101 содержат соответственносодержат соответственно 64 МБ и 512 МБ.64 МБ и 512 МБ.
Описание FPGA-суперкомпьютераОписание FPGA-суперкомпьютера
MaxwellMaxwell
УзлыУзлы суперкомпьютера Maxwellсуперкомпьютера Maxwell объединеныобъединены двумядвумя
типами вычислительных сетей. С одной стороны, этотипами вычислительных сетей. С одной стороны, это
стандартная сеть Gigabit Ethernetстандартная сеть Gigabit Ethernet, которая соединяет, которая соединяет
обычные процессоры и по которой, в частности, в этомобычные процессоры и по которой, в частности, в этом
кластере работает MPI. С другой стороны, этокластере работает MPI. С другой стороны, это
соединяющая ПЛИС-платысоединяющая ПЛИС-платы сеть RocketIOсеть RocketIO. Она соединяет. Она соединяет
все платы в системевсе платы в системе по топологии двумерного тора сопо топологии двумерного тора со
скоростью 3.125 Гбит/канал.скоростью 3.125 Гбит/канал.
Примеры программПримеры программ
На Maxwell решались три типа задач.На Maxwell решались три типа задач.
Во-первых, это задача оценки цены опционов приВо-первых, это задача оценки цены опционов при
помощи метода Монте-Карло ("Опционы Монте-Карло").помощи метода Монте-Карло ("Опционы Монте-Карло").
Во-вторых, это задача построения трехмерныхВо-вторых, это задача построения трехмерных
изображений по набору стереоснимков или стереовидеоизображений по набору стереоснимков или стереовидео
("Построение изображений").("Построение изображений").
Наконец, третья задача ("Поиск нефти и газа") - этоНаконец, третья задача ("Поиск нефти и газа") - это
решение на ПЛИС обратной задачи поиска месторожденийрешение на ПЛИС обратной задачи поиска месторождений
нефти и газа на основе электромагнитного зондирования.нефти и газа на основе электромагнитного зондирования.
Для каждой задачи приведены затраты на разработкуДля каждой задачи приведены затраты на разработку
(большую часть его составляет именно написание(большую часть его составляет именно написание
прошивок для ПЛИС). Для каждой задачи такжепрошивок для ПЛИС). Для каждой задачи также
сравниваются времена ее счета: обычный кластер из Nсравниваются времена ее счета: обычный кластер из N
процессоров против системы из N ПЛИС-ов (ЦП в этомпроцессоров против системы из N ПЛИС-ов (ЦП в этом
случае не используется для расчетов).случае не используется для расчетов).
http://fpga.parallel.ru/maxwell.htmlhttp://fpga.parallel.ru/maxwell.html
ЗадачаЗадача ВремяВремя
разработкиразработки
УскорениеУскорение
Опционы Монте-Опционы Монте-
КарлоКарло
нескольконесколько
человеко-недельчеловеко-недель
х109 - х322х109 - х322
(разные для(разные для
разных типовразных типов
ПЛИС)ПЛИС)
ПостроениеПостроение
изображенийизображений
(Image-Based(Image-Based
Rendering)Rendering)
6 человеко-6 человеко-
месяцевмесяцев
х2.52 (один узел,х2.52 (один узел,
включаявключая
пересылкупересылку
данных, без -данных, без -
х3.6), х2 (8 узлов)х3.6), х2 (8 узлов)
Поиск нефти иПоиск нефти и
газагаза
12 человеко-12 человеко-
месяцевмесяцев
х4.83 (8 узлов)х4.83 (8 узлов)
Продолжение лекции
Технологии параллельногоТехнологии параллельного
программированияпрограммирования
Средства программированияСредства программирования: параллельные: параллельные
расширения и диалекты языков – Fortran, C/C++, ADA ирасширения и диалекты языков – Fortran, C/C++, ADA и
др.др.
MPI – интерфейс передачи сообщенийMPI – интерфейс передачи сообщений..
Особенности:Особенности:
Поддерживает несколько режимов передачи данных.Поддерживает несколько режимов передачи данных.
Предусматривает гетерогенные вычисления.Предусматривает гетерогенные вычисления.
Передача типизированных сообщений.Передача типизированных сообщений.
Построение библиотек – MPICH, LAM MPI.Построение библиотек – MPICH, LAM MPI.
Наличие вариантов для языков программированияНаличие вариантов для языков программирования
C/C++, Fortran.C/C++, Fortran.
Поддерживает коллективные операции:Поддерживает коллективные операции:
широковещательную передачу, разборку/сборку, операциишироковещательную передачу, разборку/сборку, операции
редукции.редукции.
Совместимость с многопоточностью.Совместимость с многопоточностью.
Национальные и международныеНациональные и международные
проекты - МЕТАКОМПЬЮТИНГпроекты - МЕТАКОМПЬЮТИНГ
Наиболее известные глобальные проекты, связанные сНаиболее известные глобальные проекты, связанные с
вычислительными сетями нового поколения - GRID.вычислительными сетями нового поколения - GRID.
CrossGrid - Европейский исследовательский проект,Европейский исследовательский проект,
разрабатываемый в тесном сотрудничестве сразрабатываемый в тесном сотрудничестве с European DataGrid..
DataGrid - Проект DataGrid основан ЕвропейскимПроект DataGrid основан Европейским
Сообществом.Сообществом.
European Grid of Solar Observations (EGSO) - ЕвропейскийЕвропейский
проект, работающий в сотрудничестве с NASA.проект, работающий в сотрудничестве с NASA.
EUROGRID - Исследовательский проект, созданный в рамкахИсследовательский проект, созданный в рамках
европейской программы IST (Information Society Technologies).европейской программы IST (Information Society Technologies).
NEESgrid - Проект NEESgrid поддерживается программойПроект NEESgrid поддерживается программой
NEES (Network for Earthquake Engineering Simulation)NEES (Network for Earthquake Engineering Simulation)
Национального Научного Фонда (NSF) США.Национального Научного Фонда (NSF) США.
TeraGrid - Проект TeraGrid, созданный объединеннымиПроект TeraGrid, созданный объединенными
усилиями нескольких университетов и лабораторий США в 2001усилиями нескольких университетов и лабораторий США в 2001
г. при поддержке фонда.г. при поддержке фонда.
Оценки производительности суперЭВМОценки производительности суперЭВМ
Большинство оценочных характеристикБольшинство оценочных характеристик
производительности суперЭВМ связано спроизводительности суперЭВМ связано с
вычислениями над вещественными числами.вычислениями над вещественными числами. К нимК ним
относитсяотносится пиковая производительностьпиковая производительность (ПП)(ПП),,
измеряемая в млн. операций с плавающей точкой, которыеизмеряемая в млн. операций с плавающей точкой, которые
компьютер теоретически может выполнить за 1 секкомпьютер теоретически может выполнить за 1 сек
((MFLOPSMFLOPS).).
ПП - величина, практически не достижимая. ЭтоПП - величина, практически не достижимая. Это
связано с проблемами заполнения функциональныхсвязано с проблемами заполнения функциональных
конвейерных устройств. Чем больше конвейер, тем большеконвейерных устройств. Чем больше конвейер, тем больше
надо "инициализационного" времени для того, чтобы егонадо "инициализационного" времени для того, чтобы его
заполнить. Такие конвейеры эффективны при работе сзаполнить. Такие конвейеры эффективны при работе с
длинными векторами. Поэтому для оценки векторныхдлинными векторами. Поэтому для оценки векторных
суперЭВМ было введено такое понятие, каксуперЭВМ было введено такое понятие, как длинадлина
полупроизводительностиполупроизводительности -- длина вектора, при которойдлина вектора, при которой
достигается половина пиковой производительностидостигается половина пиковой производительности..
БолееБолее реальные оценки производительностиреальные оценки производительности
базируются на временах выполнения различныхбазируются на временах выполнения различных
тестовтестов. Поскольку большую часть времени выполнения. Поскольку большую часть времени выполнения
программ обычно занимают циклы, иногда именно онипрограмм обычно занимают циклы, иногда именно они
применяются в качестве тестов, например, известныеприменяются в качестве тестов, например, известные
ливерморские циклыливерморские циклы..
Ливерморские циклыЛиверморские циклы -- это набор фрагментовэто набор фрагментов
фортран-программ, каждый из которых взят изфортран-программ, каждый из которых взят из
реальных программных систем, эксплуатируемых вреальных программных систем, эксплуатируемых в
Ливерморской национальной лаборатории им.Ливерморской национальной лаборатории им.
Лоуренса (США).Лоуренса (США). В этих фрагментах используютсяВ этих фрагментах используются
различные вычислительные алгоритмы: сеточные,различные вычислительные алгоритмы: сеточные,
последовательные, волновые, что существенно с точкипоследовательные, волновые, что существенно с точки
зрения соответствия вычислительных и аппаратныхзрения соответствия вычислительных и аппаратных
структур. Соответствие этих структур друг другу должноструктур. Соответствие этих структур друг другу должно
обеспечить максимальную эффективность вычислений.обеспечить максимальную эффективность вычислений.
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем
Лекция №9 Организация ЭВМ и систем

Contenu connexe

Tendances

процессоры презентация
процессоры   презентацияпроцессоры   презентация
процессоры презентацияИван Иванов
 
Лекция №6 Организация ЭВМ и систем
Лекция №6 Организация ЭВМ и системЛекция №6 Организация ЭВМ и систем
Лекция №6 Организация ЭВМ и системpianist2317
 
Дмитрий Еманов — Под капотом серверного ПО
Дмитрий Еманов — Под капотом серверного ПОДмитрий Еманов — Под капотом серверного ПО
Дмитрий Еманов — Под капотом серверного ПОDaria Oreshkina
 
Лекция 5: Многопоточное программирование: часть 1 (Multithreading programming...
Лекция 5: Многопоточное программирование: часть 1 (Multithreading programming...Лекция 5: Многопоточное программирование: часть 1 (Multithreading programming...
Лекция 5: Многопоточное программирование: часть 1 (Multithreading programming...Mikhail Kurnosov
 
46
4646
46JIuc
 
07. Работа с битами и невыровненными данными
07. Работа с битами и невыровненными данными07. Работа с битами и невыровненными данными
07. Работа с битами и невыровненными даннымиKamlachPV
 
ARM vs Intel microarchitecture
ARM vs Intel microarchitectureARM vs Intel microarchitecture
ARM vs Intel microarchitectureIlya Kryukov
 
процессоры
процессорыпроцессоры
процессорыttku
 
Архитектура ЭВМ
Архитектура ЭВМАрхитектура ЭВМ
Архитектура ЭВМyaevents
 
процессоры и куллеры
процессоры и куллерыпроцессоры и куллеры
процессоры и куллерыKozinskaIS
 
процессоры и кулеры
процессоры и кулерыпроцессоры и кулеры
процессоры и кулерыKozinskaIS
 
Presentation Amd Cpu
Presentation Amd CpuPresentation Amd Cpu
Presentation Amd Cpuandrei145
 

Tendances (20)

Лекция №5 Организация ЭВМ и систем
Лекция №5 Организация ЭВМ и системЛекция №5 Организация ЭВМ и систем
Лекция №5 Организация ЭВМ и систем
 
процессоры презентация
процессоры   презентацияпроцессоры   презентация
процессоры презентация
 
Лекция № 2 Организация ЭВМ и систем
Лекция № 2 Организация ЭВМ и системЛекция № 2 Организация ЭВМ и систем
Лекция № 2 Организация ЭВМ и систем
 
Лекция №6 Организация ЭВМ и систем
Лекция №6 Организация ЭВМ и системЛекция №6 Организация ЭВМ и систем
Лекция №6 Организация ЭВМ и систем
 
Дмитрий Еманов — Под капотом серверного ПО
Дмитрий Еманов — Под капотом серверного ПОДмитрий Еманов — Под капотом серверного ПО
Дмитрий Еманов — Под капотом серверного ПО
 
Лекция №1 Организация ЭВМ и систем
Лекция №1 Организация ЭВМ и системЛекция №1 Организация ЭВМ и систем
Лекция №1 Организация ЭВМ и систем
 
Myaso
MyasoMyaso
Myaso
 
Лекция 5: Многопоточное программирование: часть 1 (Multithreading programming...
Лекция 5: Многопоточное программирование: часть 1 (Multithreading programming...Лекция 5: Многопоточное программирование: часть 1 (Multithreading programming...
Лекция 5: Многопоточное программирование: часть 1 (Multithreading programming...
 
46
4646
46
 
[DD] 10. Memory
[DD] 10. Memory[DD] 10. Memory
[DD] 10. Memory
 
07. Работа с битами и невыровненными данными
07. Работа с битами и невыровненными данными07. Работа с битами и невыровненными данными
07. Работа с битами и невыровненными данными
 
ARM vs Intel microarchitecture
ARM vs Intel microarchitectureARM vs Intel microarchitecture
ARM vs Intel microarchitecture
 
процессоры
процессорыпроцессоры
процессоры
 
Архитектура ЭВМ
Архитектура ЭВМАрхитектура ЭВМ
Архитектура ЭВМ
 
Number 3
Number 3Number 3
Number 3
 
процессоры и куллеры
процессоры и куллерыпроцессоры и куллеры
процессоры и куллеры
 
123
123123
123
 
процессоры и кулеры
процессоры и кулерыпроцессоры и кулеры
процессоры и кулеры
 
Presentation Amd Cpu
Presentation Amd CpuPresentation Amd Cpu
Presentation Amd Cpu
 
Simd
SimdSimd
Simd
 

Similaire à Лекция №9 Организация ЭВМ и систем

Лекция 1. Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1. Архитектурно-ориентированная оптимизация программного обеспечения (...Лекция 1. Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1. Архитектурно-ориентированная оптимизация программного обеспечения (...Mikhail Kurnosov
 
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...Mikhail Kurnosov
 
Константин Трушкин. Использование платформы Эльбрус в информационно-защищённы...
Константин Трушкин. Использование платформы Эльбрус в информационно-защищённы...Константин Трушкин. Использование платформы Эльбрус в информационно-защищённы...
Константин Трушкин. Использование платформы Эльбрус в информационно-защищённы...Kaspersky
 
Лекция №7 Организация ЭВМ и систем
Лекция №7 Организация ЭВМ и системЛекция №7 Организация ЭВМ и систем
Лекция №7 Организация ЭВМ и системpianist2317
 
Presentation
PresentationPresentation
Presentationdarksidek
 
Лекция 5. Основы параллельного программирования (Speedup, Amdahl's law, Paral...
Лекция 5. Основы параллельного программирования (Speedup, Amdahl's law, Paral...Лекция 5. Основы параллельного программирования (Speedup, Amdahl's law, Paral...
Лекция 5. Основы параллельного программирования (Speedup, Amdahl's law, Paral...Mikhail Kurnosov
 
466.основы микропроцессорной техники учебное пособие
466.основы микропроцессорной техники  учебное пособие466.основы микропроцессорной техники  учебное пособие
466.основы микропроцессорной техники учебное пособиеivanov15548
 
раздел 1
раздел 1раздел 1
раздел 1tatianabtt
 
тест по темам принцип открытой архитектуры
тест по темам принцип открытой архитектурытест по темам принцип открытой архитектуры
тест по темам принцип открытой архитектурыJIuc
 
Обзор операционных систем Microsoft Windows.
Обзор операционных систем Microsoft Windows.Обзор операционных систем Microsoft Windows.
Обзор операционных систем Microsoft Windows.aizhanzhik
 
TMPA-2013 Smirnov
TMPA-2013 SmirnovTMPA-2013 Smirnov
TMPA-2013 SmirnovIosif Itkin
 
01. Вводная лекция
01. Вводная лекция01. Вводная лекция
01. Вводная лекцияKamlachPV
 
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)Mikhail Kurnosov
 
поколения компьютеров
поколения компьютеровпоколения компьютеров
поколения компьютеровAndrey030948
 
1. Sartakov. Virtualization. June 01, 2013
1. Sartakov. Virtualization. June 01, 20131. Sartakov. Virtualization. June 01, 2013
1. Sartakov. Virtualization. June 01, 2013ru-fedora-moscow-2013
 
RUNOS OpenFlow controller (ru)
RUNOS OpenFlow controller (ru)RUNOS OpenFlow controller (ru)
RUNOS OpenFlow controller (ru)Alexander Shalimov
 
prezlec_Історія.ppt
prezlec_Історія.pptprezlec_Історія.ppt
prezlec_Історія.pptssusere2bc36
 
Nutanix Acropolis - облако на базе KVM под ключ, Максим Шапошников (Nutanix)
Nutanix Acropolis - облако на базе KVM под ключ, Максим Шапошников (Nutanix)Nutanix Acropolis - облако на базе KVM под ключ, Максим Шапошников (Nutanix)
Nutanix Acropolis - облако на базе KVM под ключ, Максим Шапошников (Nutanix)Ontico
 

Similaire à Лекция №9 Организация ЭВМ и систем (20)

Лекция 1. Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1. Архитектурно-ориентированная оптимизация программного обеспечения (...Лекция 1. Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1. Архитектурно-ориентированная оптимизация программного обеспечения (...
 
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
 
Константин Трушкин. Использование платформы Эльбрус в информационно-защищённы...
Константин Трушкин. Использование платформы Эльбрус в информационно-защищённы...Константин Трушкин. Использование платформы Эльбрус в информационно-защищённы...
Константин Трушкин. Использование платформы Эльбрус в информационно-защищённы...
 
Лекция №7 Организация ЭВМ и систем
Лекция №7 Организация ЭВМ и системЛекция №7 Организация ЭВМ и систем
Лекция №7 Организация ЭВМ и систем
 
Presentation
PresentationPresentation
Presentation
 
Лекция 5. Основы параллельного программирования (Speedup, Amdahl's law, Paral...
Лекция 5. Основы параллельного программирования (Speedup, Amdahl's law, Paral...Лекция 5. Основы параллельного программирования (Speedup, Amdahl's law, Paral...
Лекция 5. Основы параллельного программирования (Speedup, Amdahl's law, Paral...
 
2
22
2
 
466.основы микропроцессорной техники учебное пособие
466.основы микропроцессорной техники  учебное пособие466.основы микропроцессорной техники  учебное пособие
466.основы микропроцессорной техники учебное пособие
 
раздел 1
раздел 1раздел 1
раздел 1
 
тест по темам принцип открытой архитектуры
тест по темам принцип открытой архитектурытест по темам принцип открытой архитектуры
тест по темам принцип открытой архитектуры
 
Обзор операционных систем Microsoft Windows.
Обзор операционных систем Microsoft Windows.Обзор операционных систем Microsoft Windows.
Обзор операционных систем Microsoft Windows.
 
TMPA-2013 Smirnov
TMPA-2013 SmirnovTMPA-2013 Smirnov
TMPA-2013 Smirnov
 
01. Вводная лекция
01. Вводная лекция01. Вводная лекция
01. Вводная лекция
 
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
 
поколения компьютеров
поколения компьютеровпоколения компьютеров
поколения компьютеров
 
1. Sartakov. Virtualization. June 01, 2013
1. Sartakov. Virtualization. June 01, 20131. Sartakov. Virtualization. June 01, 2013
1. Sartakov. Virtualization. June 01, 2013
 
RUNOS OpenFlow controller (ru)
RUNOS OpenFlow controller (ru)RUNOS OpenFlow controller (ru)
RUNOS OpenFlow controller (ru)
 
1
11
1
 
prezlec_Історія.ppt
prezlec_Історія.pptprezlec_Історія.ppt
prezlec_Історія.ppt
 
Nutanix Acropolis - облако на базе KVM под ключ, Максим Шапошников (Nutanix)
Nutanix Acropolis - облако на базе KVM под ключ, Максим Шапошников (Nutanix)Nutanix Acropolis - облако на базе KVM под ключ, Максим Шапошников (Nutanix)
Nutanix Acropolis - облако на базе KVM под ключ, Максим Шапошников (Nutanix)
 

Plus de pianist2317

Лекция №14 Организация ЭВМ и систем
Лекция №14 Организация ЭВМ и системЛекция №14 Организация ЭВМ и систем
Лекция №14 Организация ЭВМ и системpianist2317
 
Лекция №13 Организация ЭВМ и систем
Лекция №13 Организация ЭВМ и системЛекция №13 Организация ЭВМ и систем
Лекция №13 Организация ЭВМ и системpianist2317
 
Лекция №12 Организация ЭВМ и систем
Лекция №12 Организация ЭВМ и системЛекция №12 Организация ЭВМ и систем
Лекция №12 Организация ЭВМ и системpianist2317
 
Лекция №11 Организация ЭВМ и систем
Лекция №11 Организация ЭВМ и системЛекция №11 Организация ЭВМ и систем
Лекция №11 Организация ЭВМ и системpianist2317
 
Лекция №10 Организация ЭВМ и систем
Лекция №10 Организация ЭВМ и системЛекция №10 Организация ЭВМ и систем
Лекция №10 Организация ЭВМ и системpianist2317
 
Лекция №8 Организация ЭВМ и систем
Лекция №8 Организация ЭВМ и системЛекция №8 Организация ЭВМ и систем
Лекция №8 Организация ЭВМ и системpianist2317
 
Лекция №4(часть 2) Организация ЭВМ и систем
Лекция №4(часть 2) Организация ЭВМ и системЛекция №4(часть 2) Организация ЭВМ и систем
Лекция №4(часть 2) Организация ЭВМ и системpianist2317
 
Лекция №4(часть 1) Организация ЭВМ и систем
Лекция №4(часть 1) Организация ЭВМ и системЛекция №4(часть 1) Организация ЭВМ и систем
Лекция №4(часть 1) Организация ЭВМ и системpianist2317
 
Лекция №2 Организация ЭВМ и систем
Лекция №2 Организация ЭВМ и системЛекция №2 Организация ЭВМ и систем
Лекция №2 Организация ЭВМ и системpianist2317
 
Лекция №15 Организация ЭВМ и систем
Лекция №15 Организация ЭВМ и системЛекция №15 Организация ЭВМ и систем
Лекция №15 Организация ЭВМ и системpianist2317
 
Лекция №1 Организация ЭВМ и систем
Лекция №1 Организация ЭВМ и системЛекция №1 Организация ЭВМ и систем
Лекция №1 Организация ЭВМ и системpianist2317
 

Plus de pianist2317 (11)

Лекция №14 Организация ЭВМ и систем
Лекция №14 Организация ЭВМ и системЛекция №14 Организация ЭВМ и систем
Лекция №14 Организация ЭВМ и систем
 
Лекция №13 Организация ЭВМ и систем
Лекция №13 Организация ЭВМ и системЛекция №13 Организация ЭВМ и систем
Лекция №13 Организация ЭВМ и систем
 
Лекция №12 Организация ЭВМ и систем
Лекция №12 Организация ЭВМ и системЛекция №12 Организация ЭВМ и систем
Лекция №12 Организация ЭВМ и систем
 
Лекция №11 Организация ЭВМ и систем
Лекция №11 Организация ЭВМ и системЛекция №11 Организация ЭВМ и систем
Лекция №11 Организация ЭВМ и систем
 
Лекция №10 Организация ЭВМ и систем
Лекция №10 Организация ЭВМ и системЛекция №10 Организация ЭВМ и систем
Лекция №10 Организация ЭВМ и систем
 
Лекция №8 Организация ЭВМ и систем
Лекция №8 Организация ЭВМ и системЛекция №8 Организация ЭВМ и систем
Лекция №8 Организация ЭВМ и систем
 
Лекция №4(часть 2) Организация ЭВМ и систем
Лекция №4(часть 2) Организация ЭВМ и системЛекция №4(часть 2) Организация ЭВМ и систем
Лекция №4(часть 2) Организация ЭВМ и систем
 
Лекция №4(часть 1) Организация ЭВМ и систем
Лекция №4(часть 1) Организация ЭВМ и системЛекция №4(часть 1) Организация ЭВМ и систем
Лекция №4(часть 1) Организация ЭВМ и систем
 
Лекция №2 Организация ЭВМ и систем
Лекция №2 Организация ЭВМ и системЛекция №2 Организация ЭВМ и систем
Лекция №2 Организация ЭВМ и систем
 
Лекция №15 Организация ЭВМ и систем
Лекция №15 Организация ЭВМ и системЛекция №15 Организация ЭВМ и систем
Лекция №15 Организация ЭВМ и систем
 
Лекция №1 Организация ЭВМ и систем
Лекция №1 Организация ЭВМ и системЛекция №1 Организация ЭВМ и систем
Лекция №1 Организация ЭВМ и систем
 

Лекция №9 Организация ЭВМ и систем

  • 1. Организация ЭВМ и систем Тема: Параллельные системы • Понятие о многомашинных и многопроцессорных вычислительных системах • Основные классы параллельных систем, их характерные особенности
  • 2. Что такое суперЭВМ?Что такое суперЭВМ? Оксфордский толковый словарь по вычислительнойОксфордский толковый словарь по вычислительной технике, изданныйтехнике, изданный в 1986 годув 1986 году, сообщает, что, сообщает, что суперкомпьютерсуперкомпьютер -- это очень мощная ЭВМэто очень мощная ЭВМ сс производительностью свыше 10 MFLOPSпроизводительностью свыше 10 MFLOPS.. В начале 90-В начале 90- хх годов границу проводили уже около отметкигодов границу проводили уже около отметки в 300в 300 MFLOPSMFLOPS.. В 2001 годуВ 2001 году специалисты двух ведущихспециалисты двух ведущих "суперкомпьютерных" стран, - США и Японии, -"суперкомпьютерных" стран, - США и Японии, - договорились о подъеме планкидоговорились о подъеме планки до 5 GFLOPSдо 5 GFLOPS.. В 1989 году Г. Беллом и Д. Нельсоном была разработана шутливая классификация, предлагающая любой компьютер, весящий более тонны, считать суперкомпьютером. Из ряда предложенных определений суперкомпьютеров безоговорочно сегодня признается статус суперкомпьютеров лишь для систем, включенных в последнюю версию выпуска рейтинга Top 500.
  • 3. Таким образом,Таким образом, основные признаки,основные признаки, характеризующие суперЭВМ,характеризующие суперЭВМ, кроме высокойкроме высокой производительности, следующие:производительности, следующие: самый современный технологический уровеньсамый современный технологический уровень (например, GaAs-технология);(например, GaAs-технология); специфические архитектурные решения,специфические архитектурные решения, направленные на повышение быстродействиянаправленные на повышение быстродействия (например, наличие операций над векторами);(например, наличие операций над векторами); цена, обычно свыше 1-2 млн. долл.цена, обычно свыше 1-2 млн. долл. Выдающаяся роль в становлении суперкомпьютерных систем принадлежит крупнейшим идеологам – академикам С.А. Лебедеву, В.М. Глушкову и Сеймуру Крею. В 1985 году в мире действовало уже более 150 таких систем стоимостью около $10 млн. каждая.
  • 4. Пик разработок в СССР суперкомпьютерных систем пришелся примерно на 1986 год. В достаточной мере тогда финансировались и координировались через оборонные ведомства следующие разработки многопроцессорных систем: – ереванский матричный спецпроцессор EC2700 (этот спецпроцессор выполнял только узкий набор операций над матрицами и векторами, но с очень большой скоростью); – киевский макроконвейер EC2701 (ведущие разработчики В.М. Глушков, С.Б. Погребинский, А.Г. Кухарчук, В.П. Клименко, Ю.В. Капитонова и др.); – ленинградский мультипроцессор с динамической архитектурой EC2704; – таганрогский мультипроцессор EC2706; – семейство мультипроцессоров ПС ИПУ АН СССР; – Электроника СС – БИС;
  • 5. – московские комплексы «Эльбрус-1», «Эльбрус-2» (ведущие разработчики С.А. Лебедев, В.С. Бурцев, Б.А. Бабаян и др.); – киевский коллективный интеллектуальный терминал для «Эльбрус-2» (ведущие разработчики З.Л. Рабинович, А.А. Якуба и др.); – московские системы НИИ “Квант” и ряд других.
  • 6. Области применения суперЭВМОбласти применения суперЭВМ АвтомобилестроениеАвтомобилестроение Нефте- и газодобычаНефте- и газодобыча ФармакологияФармакология Прогноз погоды и моделирование измененияПрогноз погоды и моделирование изменения климатаклимата СейсморазведкаСейсморазведка Проектирование электронных устройствПроектирование электронных устройств Синтез новых материаловСинтез новых материалов И многие, многие другиеИ многие, многие другие В 1995 году корпус автомобиля Nissan MaximaВ 1995 году корпус автомобиля Nissan Maxima удалось сделать на 10% прочнее благодаряудалось сделать на 10% прочнее благодаря использованию суперкомпьютера фирмы Cray (Theиспользованию суперкомпьютера фирмы Cray (The Atlanta Journal, 28 мая, 1995г). С помощью него былиAtlanta Journal, 28 мая, 1995г). С помощью него были найдены не только слабые точки кузова, но и наиболеенайдены не только слабые точки кузова, но и наиболее эффективный способ их удаления.эффективный способ их удаления.
  • 7. История появления параллелизма вИстория появления параллелизма в архитектуре ЭВМархитектуре ЭВМ  1953 г. – IBM 7011953 г. – IBM 701   1955 г. – IBM 7041955 г. – IBM 704  1958 г. – IBM 709 (независимые контроллеры I/O)1958 г. – IBM 709 (независимые контроллеры I/O)  1961 г. – IBM STRETCH (опережающий просмотр,1961 г. – IBM STRETCH (опережающий просмотр, расслоение памяти на 2 банка)расслоение памяти на 2 банка)  1963 г. – ATLAS (реализована конвейерная обработка1963 г. – ATLAS (реализована конвейерная обработка данных)данных)  1964 г. – CDC 6600 (независимые устройства – несколько1964 г. – CDC 6600 (независимые устройства – несколько конвейеров)конвейеров)  1969 г. – CDC 7600 (8 конвейерных функциональных1969 г. – CDC 7600 (8 конвейерных функциональных устройств)устройств)  1974 г. – ALLIAC (УУ + матрица из 64 процессоров)1974 г. – ALLIAC (УУ + матрица из 64 процессоров)  1976 г. – CRAY1 (векторно-конвейерные процессоры)1976 г. – CRAY1 (векторно-конвейерные процессоры) -) параллельный формат данныхпараллельный формат данных -) АЛУ с плавающей точкой-) АЛУ с плавающей точкой
  • 8. АрхитектураАрхитектура традиционныхтрадиционных последовательныхпоследовательных компьютеровкомпьютеров основана на идеях Джона фон Неймана иоснована на идеях Джона фон Неймана и включаетвключает в себяв себя центральный процессор, оперативнуюцентральный процессор, оперативную память и устройства ввода/выводапамять и устройства ввода/вывода.. Последовательность команд применяется кПоследовательность команд применяется к последовательности данных.последовательности данных. Скорость работы такогоСкорость работы такого компьютера определяется быстродействием егокомпьютера определяется быстродействием его центрального процессора и временем доступа кцентрального процессора и временем доступа к оперативной памяти.оперативной памяти. Быстродействие центральногоБыстродействие центрального процессора может быть увеличено за счет увеличенияпроцессора может быть увеличено за счет увеличения тактовой частотытактовой частоты, величина которой зависит от плотности, величина которой зависит от плотности элементов в интегральной схеме, способа их "упаковки" иэлементов в интегральной схеме, способа их "упаковки" и быстродействия микросхем оперативной памятибыстродействия микросхем оперативной памяти..
  • 9. Другие методы повышения быстродействияДругие методы повышения быстродействия основаны на расширениях традиционной фон-основаны на расширениях традиционной фон- неймановской архитектуры, включающих:неймановской архитектуры, включающих: конвейерную обработку данных и команд;конвейерную обработку данных и команд; использование процессоров с сокращеннымиспользование процессоров с сокращенным набором команд (RISC-процессоров). В RISC-набором команд (RISC-процессоров). В RISC- процессорах большая часть команд выполняетсяпроцессорах большая часть команд выполняется за 1- 2 такта;за 1- 2 такта; использование суперскалярныхиспользование суперскалярных процессоровпроцессоров;; векторную обработку данных;векторную обработку данных; использование процессоров со сверхдлиннымиспользование процессоров со сверхдлинным командным словом;командным словом; использование многопроцессорныхиспользование многопроцессорных конфигураций.конфигураций.
  • 10. Параллельная обработка данныхПараллельная обработка данных, имеет, имеет две разновидности:две разновидности:  Конвейерность (выделение несколькихКонвейерность (выделение нескольких этапов при выполнении операции).этапов при выполнении операции).  Параллельность (наличие несколькихПараллельность (наличие нескольких функционально независимых устройств).функционально независимых устройств).
  • 11. Закон АмдалаЗакон Амдала (зависимость коэффициента ускорения от числа(зависимость коэффициента ускорения от числа процессоров и степени параллелизма алгоритмапроцессоров и степени параллелизма алгоритма (относительной доли параллельной части)(относительной доли параллельной части) где: S – ускорение, f – доля операций, которые нужногде: S – ускорение, f – доля операций, которые нужно выполнить последовательно, p – число процессоров.выполнить последовательно, p – число процессоров. Следствие из закона АмдалаСледствие из закона Амдала:: Для того, чтобы ускорить выполнение программы вДля того, чтобы ускорить выполнение программы в q раз, необходимо ускорить не менее чем в q раз, неq раз, необходимо ускорить не менее чем в q раз, не менее чем (1-1/q)-ую часть программы.менее чем (1-1/q)-ую часть программы. pff S /)1( 1 −+ ≤
  • 12. Классификация ЭВМ по ФлиннуКлассификация ЭВМ по Флинну Одной из наиболее известных схем классификацииОдной из наиболее известных схем классификации компьютерных архитектур являетсякомпьютерных архитектур является таксономия Флинна,таксономия Флинна, предложенная Майклом Флинном в 1972 году.предложенная Майклом Флинном в 1972 году. ВВ ееее основу положено описание работы компьютера соснову положено описание работы компьютера с потоками команд и данныхпотоками команд и данных.. В классификации Флинна имеется четыре классаВ классификации Флинна имеется четыре класса архитектур:архитектур: 1.1. SISDSISD (Single Instruction Stream — Single Data Stream) —(Single Instruction Stream — Single Data Stream) — один поток команд и один поток данных.один поток команд и один поток данных. 2.2. SIMDSIMD (Single Instruction Stream — Multiple Data Stream)(Single Instruction Stream — Multiple Data Stream) — один поток команд и несколько потоков данных.— один поток команд и несколько потоков данных. 3.3. MISDMISD (Multiple Instruction Stream — Single Data Stream)(Multiple Instruction Stream — Single Data Stream) — несколько потоков команд и один поток данных.— несколько потоков команд и один поток данных. 4.4. MIMDMIMD (Multiple Instruction Stream — Multiple Data Stream)(Multiple Instruction Stream — Multiple Data Stream) — несколько потоков команд и несколько потоков данных.— несколько потоков команд и несколько потоков данных.
  • 13. SISD-компьютерыSISD-компьютеры SISD-компьютерыSISD-компьютеры — это обычные— это обычные последовательные компьютеры,последовательные компьютеры, выполняющие ввыполняющие в каждый момент времени только одну операцию надкаждый момент времени только одну операцию над одним элементом данныходним элементом данных..
  • 14. SIМD-компьютерыSIМD-компьютеры SIMD-компьютеры состоят из одного командногоSIMD-компьютеры состоят из одного командного процессорапроцессора (управляющего модуля), называемого(управляющего модуля), называемого контроллером,контроллером, и нескольких модулей обработкии нескольких модулей обработки данныхданных, называемых процессорными элементами (ПЭ)., называемых процессорными элементами (ПЭ). Количество модулей обработки данных таких машин можетКоличество модулей обработки данных таких машин может быть от 1024 до 16 384.быть от 1024 до 16 384. Процессорные элементы в SIMD-компьютерах имеютПроцессорные элементы в SIMD-компьютерах имеют относительно простое устройство, они содержатотносительно простое устройство, они содержат арифметико-логическое устройство (АЛУ), выполняющееарифметико-логическое устройство (АЛУ), выполняющее команды, поступающие из устройства управления (УУ),команды, поступающие из устройства управления (УУ), несколько регистров и локальную оперативную память.несколько регистров и локальную оперативную память. В SIMD-компьютере управление выполняетсяВ SIMD-компьютере управление выполняется контроллером, а "арифметика" отдана процессорнымконтроллером, а "арифметика" отдана процессорным элементам.элементам. Подклассом SIMD-компьютеров являютсяПодклассом SIMD-компьютеров являются векторные компьютерывекторные компьютеры. Пример такой вычислительной. Пример такой вычислительной системы — Hitachi S3600.системы — Hitachi S3600. Другой пример SIMD-Другой пример SIMD- компьютера — матричные процессорыкомпьютера — матричные процессоры (Array Processor).(Array Processor).
  • 15. Схема SIMD- компьютера сСхема SIMD- компьютера с разделяемой памятьюразделяемой памятью Схема SIMD-компьютера сСхема SIMD-компьютера с распределенной памятьюраспределенной памятью
  • 16. MISD-компьютерыMISD-компьютеры Вычислительных машин такого класса мало. Один изВычислительных машин такого класса мало. Один из немногих примеров - систолический массив процессоров, внемногих примеров - систолический массив процессоров, в котором процессоры находятся в узлах регулярной решетки.котором процессоры находятся в узлах регулярной решетки. Роль ребер в ней играют межпроцессорные соединения, всеРоль ребер в ней играют межпроцессорные соединения, все ПЭ управляются общим тактовым генератором. В каждомПЭ управляются общим тактовым генератором. В каждом цикле работы любой ПЭ получает данные от своих соседей,цикле работы любой ПЭ получает данные от своих соседей, выполняет одну команду и передает результат соседям. Навыполняет одну команду и передает результат соседям. На рисунке дана схема фрагмента систолического массива.рисунке дана схема фрагмента систолического массива.
  • 17. MIMD-компьютерыMIMD-компьютеры Этот класс архитектур наиболее богат примерамиЭтот класс архитектур наиболее богат примерами успешных реализаций. В него попадаютуспешных реализаций. В него попадают симметричныесимметричные параллельные вычислительные системы, рабочиепараллельные вычислительные системы, рабочие станции с несколькими процессорами, кластерыстанции с несколькими процессорами, кластеры рабочих станций ирабочих станций и т. д. Довольно давно появилисьт. д. Довольно давно появились компьютеры с несколькими независимыми процессорами,компьютеры с несколькими независимыми процессорами, но вначале на них был реализован только принципно вначале на них был реализован только принцип параллельного исполнения заданий, т. е. на разныхпараллельного исполнения заданий, т. е. на разных процессорах одновременно выполнялись независимыепроцессорах одновременно выполнялись независимые программы.программы. В начале 90-х годов прошлого века именно MIMD-В начале 90-х годов прошлого века именно MIMD- компьютеры вышли в лидеры на рынкекомпьютеры вышли в лидеры на рынке высокопроизводительных вычислительных систем.высокопроизводительных вычислительных систем.
  • 18. Схема MIMD-компьютераСхема MIMD-компьютера с разделяемой памятьюс разделяемой памятью Схема MIMD-компьютера сСхема MIMD-компьютера с распределенной памятьюраспределенной памятью
  • 19. Имеются и гибридные конфигурации, в которых,Имеются и гибридные конфигурации, в которых, например, объединены несколько SIMD-компьютеров, внапример, объединены несколько SIMD-компьютеров, в результате чего получается MSIMD-компьютер,результате чего получается MSIMD-компьютер, позволяющий создавать виртуальные конфигурации,позволяющий создавать виртуальные конфигурации, каждая из которых работает в SIMD-режиме.каждая из которых работает в SIMD-режиме. Классификация Флинна не дает исчерпывающегоКлассификация Флинна не дает исчерпывающего описания разнообразных архитектур MIMD-машин, поройописания разнообразных архитектур MIMD-машин, порой существенно отличающихся друг от друга.существенно отличающихся друг от друга. ЧастоЧасто используется классификация, в которой за основуиспользуется классификация, в которой за основу берется способ взаимодействия процессоров сберется способ взаимодействия процессоров с оперативной памятью.оперативной памятью. Например, существуют такиеНапример, существуют такие подклассы MIMD-компьютеров, какподклассы MIMD-компьютеров, как системы ссистемы с разделяемой памятью и системы с распределеннойразделяемой памятью и системы с распределенной памятью.памятью. Системы с разделяемой памятью могутСистемы с разделяемой памятью могут относиться по классификации Флинна как к MIMD, так и котноситься по классификации Флинна как к MIMD, так и к SIMD-машинам. То же самое можно сказать и о системах сSIMD-машинам. То же самое можно сказать и о системах с распределенной памятью.распределенной памятью.
  • 20. Классификация по способуКлассификация по способу взаимодействия процессоров свзаимодействия процессоров с оперативной памятьюоперативной памятью В этой схеме выделяют три основные группыВ этой схеме выделяют три основные группы архитектур:архитектур: - с разделяемой памятью;- с разделяемой памятью; - с распределенной памятью;- с распределенной памятью; - с- с распределенно-разделяемой памятью.распределенно-разделяемой памятью. Основным свойством систем с разделяемойОсновным свойством систем с разделяемой памятью является то, что все процессоры системыпамятью является то, что все процессоры системы имеют доступ к одной оперативной памяти, используяимеют доступ к одной оперативной памяти, используя единое адресное пространствоединое адресное пространство. Обычно главная память. Обычно главная память состоит из нескольких модулей памяти (их число несостоит из нескольких модулей памяти (их число не обязательно совпадает с числом процессоров).обязательно совпадает с числом процессоров).
  • 21. В такой системе связь между процессорамиВ такой системе связь между процессорами выполняется с помощью разделяемых переменных. Этотвыполняется с помощью разделяемых переменных. Этот тип параллельных компьютеров называют такжетип параллельных компьютеров называют также компьютерамикомпьютерами с однородным доступом к памятис однородным доступом к памяти ии обозначают английской аббревиатуройобозначают английской аббревиатурой UMA (UniformUMA (Uniform Memory Access),Memory Access), поскольку параметры доступа к модулямпоскольку параметры доступа к модулям памяти для всех процессоров одинаковы.памяти для всех процессоров одинаковы. Преимуществом компьютеров с разделяемойПреимуществом компьютеров с разделяемой памятью является удобство программированияпамятью является удобство программирования длядля них, поскольку все данные доступны всем процессорам, иних, поскольку все данные доступны всем процессорам, и не надо заботиться о пересылках данных. Синхронизациюне надо заботиться о пересылках данных. Синхронизацию обеспечивает сама система. Однако на компьютерах собеспечивает сама система. Однако на компьютерах с разделяемой памятьюразделяемой памятью сложно достичь параллелизмасложно достичь параллелизма высокого уровнявысокого уровня, поскольку большинство таких систем, поскольку большинство таких систем содержат менее 64 процессоровсодержат менее 64 процессоров. Это ограничение. Это ограничение следует из плохой масштабируемости централизованнойследует из плохой масштабируемости централизованной памяти и системы коммуникаций.памяти и системы коммуникаций.
  • 22. В случае компьютера с распределенной памятьюВ случае компьютера с распределенной памятью каждый процессор имеет собственную оперативнуюкаждый процессор имеет собственную оперативную памятьпамять. Глобального адресного пространства в этом. Глобального адресного пространства в этом случае уже нет. Коммуникации и синхронизацияслучае уже нет. Коммуникации и синхронизация процессоров осуществляются с помощью обменапроцессоров осуществляются с помощью обмена сообщениями по коммуникационной сети.сообщениями по коммуникационной сети. В отличие от систем с разделяемой памятьюВ отличие от систем с разделяемой памятью системы ссистемы с распределенной памятью очень хорошораспределенной памятью очень хорошо масштабируютсямасштабируются, поскольку в этом случае исключены, поскольку в этом случае исключены конфликты по доступу к памяти. В результате могутконфликты по доступу к памяти. В результате могут создаваться системы с высокой степенью параллелизмасоздаваться системы с высокой степенью параллелизма (МРР — Massively Parallel Processors), состоящие из(МРР — Massively Parallel Processors), состоящие из сотен и тысяч процессоровсотен и тысяч процессоров. Типичными. Типичными представителями систем с распределенной памятьюпредставителями систем с распределенной памятью являются кластеры рабочих станций, объединенныеявляются кластеры рабочих станций, объединенные коммуникационной сетью достаточно дешевой, нокоммуникационной сетью достаточно дешевой, но обеспечивающей приемлемую скорость обмена даннымиобеспечивающей приемлемую скорость обмена данными (Ethernet, Myrinet и др.).(Ethernet, Myrinet и др.).
  • 23. В системах с распределенно-разделяемойВ системах с распределенно-разделяемой памятьюпамятью используются преимущества обоих подходов.используются преимущества обоих подходов. Это относительная простота программирования с однойЭто относительная простота программирования с одной стороны, хорошая масштабируемость с другой.стороны, хорошая масштабируемость с другой. Каждый процессор имеет собственную локальнуюКаждый процессор имеет собственную локальную памятьпамять, но, в отличие от архитектуры с распределенной, но, в отличие от архитектуры с распределенной памятью,памятью, все модули памяти образуют единоевсе модули памяти образуют единое адресное пространствоадресное пространство, т. е. каждая ячейка памяти, т. е. каждая ячейка памяти имеет адрес, единый для всей системы.имеет адрес, единый для всей системы.
  • 24. Для самостоятельного изучения Чаще всего аналитики выделяют как актуальные следующие четыре направления архитектурных решений: 1) векторно-конвейерные системы, 2) массивно-параллельные системы с распределенной памятью (MPP массивно-параллельная архитектура – massive parallel processing), 3) параллельные системы с общей памятью, 4) кластерную архитектуру.
  • 25. 1. Массивно-параллельные1. Массивно-параллельные системы (MPP)системы (MPP) АрхитектураАрхитектура Система состоит из однородныхСистема состоит из однородных вычислительных узловвычислительных узлов,, включающих:включающих: один или несколько центральных процессоров (обычноодин или несколько центральных процессоров (обычно RISC),RISC), локальную памятьлокальную память (прямой доступ к памяти других(прямой доступ к памяти других узлов невозможен),узлов невозможен), коммуникационный процессор или сетевой адаптеркоммуникационный процессор или сетевой адаптер иногда - жесткие диски (как в SP) и/или другиеиногда - жесткие диски (как в SP) и/или другие устройства в/в.устройства в/в. К системе могут быть добавлены специальные узлыК системе могут быть добавлены специальные узлы ввода-вывода и управляющие узлы. Узлы связаны черезввода-вывода и управляющие узлы. Узлы связаны через некоторую коммуникационную среду (высокоскоростная сеть,некоторую коммуникационную среду (высокоскоростная сеть, коммутатор и т.п.)коммутатор и т.п.) Примеры:Примеры: IBM RS/6000IBM RS/6000 SP2SP2, Intel PARAGON/ASCI Red,Intel PARAGON/ASCI Red, CRAYCRAY T3ET3E, HitachiHitachi SR8000SR8000, транспьютерные системытранспьютерные системы ParsytecParsytec ..
  • 26. CRAY T3DCRAY T3D Cray T3D и T3E используют единое адресноеCray T3D и T3E используют единое адресное пространство (общая виртуальная память). Попространство (общая виртуальная память). По аппаратному прерыванию особого случая адресации ОСаппаратному прерыванию особого случая адресации ОС выполняет пересылку страницы с одного узла на другой.выполняет пересылку страницы с одного узла на другой. У каждого МП своя локальная память, но единоеУ каждого МП своя локальная память, но единое виртуальное адресное пространство.виртуальное адресное пространство. Cray T3D (32-2048 МП)Cray T3D (32-2048 МП) хост-машинахост-машина Сеть межпроцессорного взаимодействия (коммуникационная сеть) 140 Мбайт/с Вычислительные узлы Узлы ввода/вывода 2 ПЭ МП Локальная Несколько вспомогательных схем Сетевой интерфейс Контроллер блочных передач
  • 27. МасштабируемостьМасштабируемость Общее число процессоров в реальных системахОбщее число процессоров в реальных системах достигает нескольких тысяч (ASCI Red, Blue Mountain).достигает нескольких тысяч (ASCI Red, Blue Mountain). Операционная системаОперационная система Существуют два основных варианта:Существуют два основных варианта:  Полноценная ОС работает только на управляющейПолноценная ОС работает только на управляющей машине (front-end), на каждом узле работает сильномашине (front-end), на каждом узле работает сильно урезанный вариант ОС, обеспечивающие только работуурезанный вариант ОС, обеспечивающие только работу расположенной в нем ветви параллельного приложения.расположенной в нем ветви параллельного приложения. Пример: Cray T3E.Пример: Cray T3E.  На каждом узле работает полноценная UNIX-На каждом узле работает полноценная UNIX- подобная ОС (вариант, близкий кподобная ОС (вариант, близкий к кластерномукластерному подходу).подходу). Пример: IBM RS/6000 SP + ОС AIX, устанавливаемаяПример: IBM RS/6000 SP + ОС AIX, устанавливаемая отдельно на каждом узле.отдельно на каждом узле. Модель программированияМодель программирования Программирование в рамках модели передачиПрограммирование в рамках модели передачи сообщений (сообщений ( MPIMPI, PVM, BSPlib)
  • 28. 2. Симметричные2. Симметричные мультипроцессорные системы (SMP)мультипроцессорные системы (SMP) АрхитектураАрхитектура Система состоит из нескольких однородныхСистема состоит из нескольких однородных процессоров ипроцессоров и массива общей памятимассива общей памяти (обычно из(обычно из нескольких независимых блоков). Все процессоры имеютнескольких независимых блоков). Все процессоры имеют доступ к любой точке памяти с одинаковой скоростью.доступ к любой точке памяти с одинаковой скоростью. Процессоры подключены к памяти либо с помощью общейПроцессоры подключены к памяти либо с помощью общей шины (базовые 2-4 процессорные SMP-сервера), либо сшины (базовые 2-4 процессорные SMP-сервера), либо с помощью crossbar-коммутатора (HP 9000). Аппаратнопомощью crossbar-коммутатора (HP 9000). Аппаратно поддерживается когерентность кэшей.поддерживается когерентность кэшей. Примеры:Примеры: HP 9000 V-classHP 9000 V-class, N-class; SMP-cервера и, N-class; SMP-cервера и рабочие станции на базе процессоров Intel (IBM, HP,рабочие станции на базе процессоров Intel (IBM, HP, Compaq, Dell, ALR, Unisys, DG, Fujitsu и др.).Compaq, Dell, ALR, Unisys, DG, Fujitsu и др.).
  • 29. МасштабируемостьМасштабируемость Наличие общей памяти сильно упрощаетНаличие общей памяти сильно упрощает взаимодействие процессоров между собой, однаковзаимодействие процессоров между собой, однако накладывает сильные ограничения на их число - ненакладывает сильные ограничения на их число - не более 32 в реальных системах. Для построенияболее 32 в реальных системах. Для построения масштабируемых систем на базе SMP используютсямасштабируемых систем на базе SMP используются кластерныекластерные илиили NUMANUMA-архитектуры.-архитектуры. Операционная системаОперационная система Вся система работает под управлением единой ОСВся система работает под управлением единой ОС (обычно UNIX-подобной, но для Intel-платформ(обычно UNIX-подобной, но для Intel-платформ поддерживается Windows NT). ОС автоматически (вподдерживается Windows NT). ОС автоматически (в процессе работы) распределяет процессы/нити попроцессе работы) распределяет процессы/нити по процессорам, но иногда возможна и явная привязка.процессорам, но иногда возможна и явная привязка. Модель программированияМодель программирования Программирование в моделиПрограммирование в модели общей памятиобщей памяти. (POSIX. (POSIX threads,threads, OpenMPOpenMP). Для SMP-систем существуютДля SMP-систем существуют сравнительно эффективные средствасравнительно эффективные средства автоматического распараллеливанияавтоматического распараллеливания.
  • 30. 3. Системы с неоднородным3. Системы с неоднородным доступом к памяти (NUMA)доступом к памяти (NUMA) АрхитектураАрхитектура Система состоит из однородных базовых модулейСистема состоит из однородных базовых модулей (плат), состоящих из небольшого числа процессоров и(плат), состоящих из небольшого числа процессоров и блока памяти. Модули объединены с помощьюблока памяти. Модули объединены с помощью высокоскоростного коммутатора. Поддерживаетсявысокоскоростного коммутатора. Поддерживается единое адресное пространствоединое адресное пространство, аппаратно, аппаратно поддерживается доступ к удаленной памяти, т.е. к памятиподдерживается доступ к удаленной памяти, т.е. к памяти других модулей.других модулей. При этом доступ к локальной памяти вПри этом доступ к локальной памяти в несколько раз быстрее, чем к удаленнойнесколько раз быстрее, чем к удаленной. В случае, если. В случае, если аппаратно поддерживается когерентность кэшей во всейаппаратно поддерживается когерентность кэшей во всей системе (обычно это так), говорят об архитектуре cc-системе (обычно это так), говорят об архитектуре cc- NUMA (cache-coherent NUMA).NUMA (cache-coherent NUMA). Примеры:Примеры: HPHP HP 9000 V-classHP 9000 V-class в SCA-конфигурациях,в SCA-конфигурациях, SGISGI Origin2000Origin2000, SunSun HPC 10000HPC 10000, IBM/Sequent, IBM/Sequent NUMA-Q 2000NUMA-Q 2000, SNI, SNI RM600RM600.
  • 31. МасштабируемостьМасштабируемость Масштабируемость NUMA-систем ограничиваетсяМасштабируемость NUMA-систем ограничивается объемом адресного пространства, возможностямиобъемом адресного пространства, возможностями аппаратуры поддержки когерентности кэшей иаппаратуры поддержки когерентности кэшей и возможностями операционной системы по управлениювозможностями операционной системы по управлению большим числом процессоров. На настоящий момент,большим числом процессоров. На настоящий момент, максимальное число процессоров в NUMA-системахмаксимальное число процессоров в NUMA-системах составляет 256 (Origin2000).составляет 256 (Origin2000). Операционная системаОперационная система Обычно вся система работает под управлениемОбычно вся система работает под управлением единой ОС, как вединой ОС, как в SMPSMP. Но возможны также варианты. Но возможны также варианты динамического "подразделения" системы, когдадинамического "подразделения" системы, когда отдельные "разделы" системы работают подотдельные "разделы" системы работают под управлением разных ОС (например, Windows NT и UNIXуправлением разных ОС (например, Windows NT и UNIX в NUMA-Q 2000).в NUMA-Q 2000). Модель программированияМодель программирования АналогичноАналогично SMP.
  • 32. 4. Параллельные векторные4. Параллельные векторные системы (PVP)системы (PVP) АрхитектураАрхитектура Основным признаком PVP-систем является наличиеОсновным признаком PVP-систем является наличие специальных векторно-конвейерных процессоров, вспециальных векторно-конвейерных процессоров, в которых предусмотрены команды однотипной обработкикоторых предусмотрены команды однотипной обработки векторов независимых данных, эффективновекторов независимых данных, эффективно выполняющиеся на конвейерных функциональныхвыполняющиеся на конвейерных функциональных устройствах. Как правило, несколько таких процессоров (1-устройствах. Как правило, несколько таких процессоров (1- 16) работают одновременно16) работают одновременно над общей памятьюнад общей памятью (аналогично(аналогично SMPSMP) в рамках многопроцессорныхв рамках многопроцессорных конфигураций. Несколько таких узлов могут бытьконфигураций. Несколько таких узлов могут быть объединены с помощью коммутатора (аналогичнообъединены с помощью коммутатора (аналогично MPPMPP).). Примеры:Примеры: NEC SX-4/NEC SX-4/SX-5SX-5, линия векторно-, линия векторно- конвейерных компьютеров CRAY: от CRAY-1, CRAYконвейерных компьютеров CRAY: от CRAY-1, CRAY J90/T90, CRAY SV1, CRAY X1, серия Fujitsuсерия Fujitsu VPP..
  • 33. Модель программированияМодель программирования Эффективное программированиеЭффективное программирование подразумевает:подразумевает: векторизацию циклов (для достижения разумнойвекторизацию циклов (для достижения разумной производительности одного процессора);производительности одного процессора); и их распараллеливание (для одновременнойи их распараллеливание (для одновременной загрузки нескольких процессоров однимзагрузки нескольких процессоров одним приложением).приложением).
  • 34. CRAY Y-MP C90CRAY Y-MP C90 1.1. 16 МП, t16 МП, tтактатакта = 4,1 нс, f= 4,1 нс, fт.ч.=т.ч.=250 МГц.250 МГц. 2.2. Разделяемые ресурсы процессора:Разделяемые ресурсы процессора:  ОПОП разделяется всеми МП и секцией ввода/вывода. ОПразделяется всеми МП и секцией ввода/вывода. ОП разделена на множество банков, которые могут работатьразделена на множество банков, которые могут работать одновременно.одновременно.  Секция ввода/вывода:Секция ввода/вывода: Low-Speed Channels – 6 Мбайт/сLow-Speed Channels – 6 Мбайт/с High-Speed Channels – 200 Мбайт/сHigh-Speed Channels – 200 Мбайт/с Very High-Speed Channels – 1800 Мбайт/сVery High-Speed Channels – 1800 Мбайт/с  Секция межпроцессорного взаимодействияСекция межпроцессорного взаимодействия содержитсодержит регистры и семафоры, предназначенные для передачи данныхрегистры и семафоры, предназначенные для передачи данных и управляющей информации.и управляющей информации. 1.1. Вычислительная секция процессораВычислительная секция процессора  Регистры (адресные, скалярные, векторные).Регистры (адресные, скалярные, векторные).  Функциональные устройства.Функциональные устройства.  Сети коммуникаций.Сети коммуникаций. 1.1. Секция управления. Команды выбираются из ОП блоками иСекция управления. Команды выбираются из ОП блоками и заносятся в буфера команд.заносятся в буфера команд. 2.2. Параллельное выполнение программ.Параллельное выполнение программ.
  • 35. Факторы, снижающиеФакторы, снижающие производительностьпроизводительность параллельных компьютеровпараллельных компьютеров 1.1.Закон Амдала.Закон Амдала. В таблице показано, на какое максимальное ускорениеВ таблице показано, на какое максимальное ускорение работы программы можно рассчитывать в зависимости отработы программы можно рассчитывать в зависимости от доли последовательных вычислений и числа доступныхдоли последовательных вычислений и числа доступных ПЭ.ПЭ. ЧислоЧисло ПЭПЭ Доля последовательных вычисленийДоля последовательных вычислений 50%50% 25%25% 10%10% 5%5% 2%2% 22 1.331.33 1.601.60 1.821.82 1.901.90 1.961.96 88 1.781.78 2.912.91 4.714.71 5.935.93 7.027.02 3232 1.941.94 3.663.66 7.807.80 12.5512.55 19.7519.75 512512 1.991.99 3.973.97 9.839.83 19.2819.28 45.6345.63
  • 36. 2.2. Время инициализации посылки сообщенияВремя инициализации посылки сообщения (латентность)(латентность) ии передачи сообщения по сетипередачи сообщения по сети.. Максимальная скорость передачи достигается наМаксимальная скорость передачи достигается на больших сообщениях, когда латентность, возникающаябольших сообщениях, когда латентность, возникающая лишь вначале, не столь заметна на фоне непосредственнолишь вначале, не столь заметна на фоне непосредственно передачи данных.передачи данных. 3.3. Возможность асинхронной посылки сообщений иВозможность асинхронной посылки сообщений и вычисленийвычислений.. Если или аппаратура, или программное обеспечение неЕсли или аппаратура, или программное обеспечение не поддерживают возможности проводить вычисления наподдерживают возможности проводить вычисления на фоне пересылок, то возникнут неизбежные накладныефоне пересылок, то возникнут неизбежные накладные расходы, связанные с ожиданием полного завершениярасходы, связанные с ожиданием полного завершения взаимодействия параллельных процессов.взаимодействия параллельных процессов. 4.4. Неравномерная загрузка всех процессорныхНеравномерная загрузка всех процессорных элементов.элементов. 5.5. Время ожидания прихода сообщенияВремя ожидания прихода сообщения.. 6.6. Реальная производительность одногоРеальная производительность одного
  • 37. 5. Кластерные системы5. Кластерные системы АрхитектураАрхитектура Набор рабочих станций (или даже ПК) общегоНабор рабочих станций (или даже ПК) общего назначения, используется в качестве дешевого вариантаназначения, используется в качестве дешевого варианта массивно-параллельного компьютера. Для связи узловкомпьютера. Для связи узлов используется одна из стандартных сетевых технологийиспользуется одна из стандартных сетевых технологий (Fast/Gigabit Ethernet, Myrinet) на базе шинной архитектуры(Fast/Gigabit Ethernet, Myrinet) на базе шинной архитектуры или коммутатора. При объединении в кластерили коммутатора. При объединении в кластер компьютеров разной мощности или разной архитектуры,компьютеров разной мощности или разной архитектуры, говорят оговорят о гетерогенныхгетерогенных (неоднородных) кластерах.(неоднородных) кластерах. Узлы кластера могут одновременно использоваться вУзлы кластера могут одновременно использоваться в качестве пользовательских рабочих станций. В случае,качестве пользовательских рабочих станций. В случае, когда это не нужно, узлы могут быть существеннокогда это не нужно, узлы могут быть существенно облегчены и/или установлены в стойку.облегчены и/или установлены в стойку. Примеры:Примеры: NT-кластер в NCSA,в NCSA, Beowulf-кластеры,-кластеры, CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5,CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5, последние модели IBM SP2.
  • 38. Операционная системаОперационная система Используются стандартные для рабочих станций ОС,Используются стандартные для рабочих станций ОС, чаще всего, свободно распространяемые - Linux/FreeBSD,чаще всего, свободно распространяемые - Linux/FreeBSD, вместе со специальными средствами поддержкивместе со специальными средствами поддержки параллельного программирования и распределенияпараллельного программирования и распределения нагрузки.нагрузки. Модель программированияМодель программирования Программирование, как правило, в рамках моделиПрограммирование, как правило, в рамках модели передачи сообщений (чаще всего - MPI). Дешевизнапередачи сообщений (чаще всего - MPI). Дешевизна подобных систем оборачивается большими накладнымиподобных систем оборачивается большими накладными расходами на взаимодействие параллельных процессоврасходами на взаимодействие параллельных процессов между собой, что сильно сужает потенциальный классмежду собой, что сильно сужает потенциальный класс решаемых задач.решаемых задач.
  • 39. 6. Суперкомпьютеры на базе FPGA6. Суперкомпьютеры на базе FPGA ЭкспериментальныйЭкспериментальный суперкомпьютер, способныйсуперкомпьютер, способный самостоятельно изменять собственнуюсамостоятельно изменять собственную конфигурациюконфигурацию, создан в Шотландии., создан в Шотландии. В основеВ основе суперкомпьютерасуперкомпьютера — уже не обычные микропроцессоры,— уже не обычные микропроцессоры, а так называемые «программируемые матрицы ключей»,а так называемые «программируемые матрицы ключей», илиили «программируемые логические матрицы» FPGA«программируемые логические матрицы» FPGA (Field Programmable Gate Array).(Field Programmable Gate Array). Особенностью решения на базе FPGA является егоОсобенностью решения на базе FPGA является его исключительно высокая производительность наисключительно высокая производительность на некоторых задачахнекоторых задачах (по данным источника, прирост(по данным источника, прирост производительности может доходить до 10 -100 раз попроизводительности может доходить до 10 -100 раз по сравнению с обычными процессорами). Кроме того,сравнению с обычными процессорами). Кроме того, FPGAFPGA потребляют заметно меньше энергиипотребляют заметно меньше энергии. Так. Так компьютеркомпьютер производительностью 1 терафлоппроизводительностью 1 терафлоп, на 64, на 64 вычислительных модуля на основе FPGAвычислительных модуля на основе FPGA будетбудет потреблять лишь 1% энергии,потреблять лишь 1% энергии, требуемойтребуемой суперкомпьютеру стандартной архитектуры с той жесуперкомпьютеру стандартной архитектуры с той же производительностью.производительностью.
  • 40. Конфигурацию устройств FPGA можно менятьКонфигурацию устройств FPGA можно менять программным образом, что дает возможностьпрограммным образом, что дает возможность «настраивать» вычислительную систему для решения«настраивать» вычислительную систему для решения конкретной задачиконкретной задачи — в отличие от микропроцессоров,— в отличие от микропроцессоров, которые представляют собой вычислительные устройствакоторые представляют собой вычислительные устройства с жесткой, раз и навсегда заданной конфигурацией.с жесткой, раз и навсегда заданной конфигурацией. Каждый чип FPGA включает блок программируемойКаждый чип FPGA включает блок программируемой логики, позволяющей менять схемотехнику устройства.логики, позволяющей менять схемотехнику устройства. Основная проблема — это разработкаОсновная проблема — это разработка технологии, которая позволиттехнологии, которая позволит программировать их.программировать их.
  • 41. За небольшими компаниями, имеющимиЗа небольшими компаниями, имеющими эффективные инновационные технологии, ведутэффективные инновационные технологии, ведут постоянную “охоту” компании – гиганты, стараясь ихпостоянную “охоту” компании – гиганты, стараясь их выкупить вместе с соответствующимивыкупить вместе с соответствующими интеллектуальными активами, присоединив к себе. Так,интеллектуальными активами, присоединив к себе. Так, компания Cray в 2004 году приобрела небольшуюкомпания Cray в 2004 году приобрела небольшую канадскую компанию OctigaBay, которая создалаканадскую компанию OctigaBay, которая создала эффективные акселераторы приложений на базеэффективные акселераторы приложений на базе ПЛИСПЛИС VirtexII Pro. КомпанияVirtexII Pro. Компания Cray внедрила этиCray внедрила эти акселераторы в свой суперкомпьютер XD1акселераторы в свой суперкомпьютер XD1,, использовав уже новые ПЛИС Xilinx Virtex-4 по 6 штук виспользовав уже новые ПЛИС Xilinx Virtex-4 по 6 штук в каждой стойке системы XD1. Cray в новыхкаждой стойке системы XD1. Cray в новых суперкомпьютерах планирует подключатьсуперкомпьютерах планирует подключать вспомогательный DRC FPGA чип непосредственно ввспомогательный DRC FPGA чип непосредственно в сокет Opteron-процессора. Это создаст ряд преимуществсокет Opteron-процессора. Это создаст ряд преимуществ для пользователей разъема CraySeaStar.для пользователей разъема CraySeaStar.
  • 42. 22 марта 2007 года22 марта 2007 года Специалисты Эдинбургского университетаСпециалисты Эдинбургского университета (Шотландия) завершили строительство(Шотландия) завершили строительство экспериментального суперкомпьютера с изменяемойэкспериментального суперкомпьютера с изменяемой архитектурой. Вычислительная система, как сообщаетархитектурой. Вычислительная система, как сообщает ZDNet, получила название Maxwell.ZDNet, получила название Maxwell. В суперкомпьютере Maxwell вместо традиционныхВ суперкомпьютере Maxwell вместо традиционных микропроцессоров используются перепрограммируемыемикропроцессоров используются перепрограммируемые логические интегральные схемы (FPGA). Конфигурациюлогические интегральные схемы (FPGA). Конфигурацию FPGA можно менять при помощи специализированныхFPGA можно менять при помощи специализированных программных средств, адаптируя таким образом системупрограммных средств, адаптируя таким образом систему для решения строго определенных задач. Правда,для решения строго определенных задач. Правда, перепрограммирование суперкомпьютера на базе FPGAперепрограммирование суперкомпьютера на базе FPGA представляет собой очень сложный процесс, чтопредставляет собой очень сложный процесс, что затрудняет коммерческое использование подобныхзатрудняет коммерческое использование подобных комплексов.комплексов.
  • 43. По словам Марка Парсонса, руководителя проектаПо словам Марка Парсонса, руководителя проекта Maxwell, в процессе тестирования экспериментальнаяMaxwell, в процессе тестирования экспериментальная система использовалась для проведения сложныхсистема использовалась для проведения сложных расчетов в финансовой и медицинской сферах. При этомрасчетов в финансовой и медицинской сферах. При этом комплекс продемонстрировал в 300 раз болеекомплекс продемонстрировал в 300 раз более высокую производительность и в 10 раз меньшеевысокую производительность и в 10 раз меньшее энергопотребление по сравнению со стандартнымиэнергопотребление по сравнению со стандартными вычислительными центрами.вычислительными центрами. РазработкаРазработка суперкомпьютерасуперкомпьютера Maxwell длилась дваMaxwell длилась два года и обошлась в семь миллионов долларов США.года и обошлась в семь миллионов долларов США. Помощь в создании специализированных средствПомощь в создании специализированных средств программирования шотландским ученым оказывалипрограммирования шотландским ученым оказывали исследователи альянса FHPCA (FPGA High Performanceисследователи альянса FHPCA (FPGA High Performance Computing Alliance). Парсонс считает, что в течениеComputing Alliance). Парсонс считает, что в течение ближайших двух-трех лет интерес к вычислительнымближайших двух-трех лет интерес к вычислительным комплексам на основе перепрограммируемых логическихкомплексам на основе перепрограммируемых логических интегральных схем может существенно вырасти. Кстати,интегральных схем может существенно вырасти. Кстати, схемы FPGA уже используют в своей продукциисхемы FPGA уже используют в своей продукции некоторые компании, в частности, Cray.некоторые компании, в частности, Cray.
  • 44. Описание FPGA-суперкомпьютераОписание FPGA-суперкомпьютера MaxwellMaxwell Maxwell является высокопроизводительнымMaxwell является высокопроизводительным реконфигурируемым компьютером, разработаннымреконфигурируемым компьютером, разработанным альянсом FHPCA для демонстрации возможностейальянсом FHPCA для демонстрации возможностей создания вычислительных приложений на базе ПЛИС-создания вычислительных приложений на базе ПЛИС- технологий.технологий. Физически MaxwellФизически Maxwell состоит из 32 блейд-серверовсостоит из 32 блейд-серверов,, управляемых при помощи IBM Blade Center. Каждыйуправляемых при помощи IBM Blade Center. Каждый сервер содержит одинсервер содержит один обычный процессоробычный процессор Intel XeonIntel Xeon сс тактовой частотойтактовой частотой 2.8 ГГц с 1 ГБ ОЗУ2.8 ГГц с 1 ГБ ОЗУ, а также, а также 2 ПЛИС-2 ПЛИС- платыплаты различных типов. Один тип ПЛИС-платыразличных типов. Один тип ПЛИС-платы разрабатывается фирмой Alpha Data, а другой - фирмойразрабатывается фирмой Alpha Data, а другой - фирмой Nallatech (обе входят в состав FHPCA).Nallatech (обе входят в состав FHPCA). Платы сделаныПлаты сделаны на основе ПЛИС Xilinx Virtex-4на основе ПЛИС Xilinx Virtex-4 и соединяются с основными соединяются с основным процессором при помощи интерфейса IBM PCI-X (непроцессором при помощи интерфейса IBM PCI-X (не путать с PCI Express!). Платы Alpha Data ADM-XRC-4FXпутать с PCI Express!). Платы Alpha Data ADM-XRC-4FX содержатсодержат 16 МБ статической памяти и 1ГБ16 МБ статической памяти и 1ГБ динамической памятидинамической памяти (на плату), в то время как платы(на плату), в то время как платы Nallatech H101Nallatech H101 содержат соответственносодержат соответственно 64 МБ и 512 МБ.64 МБ и 512 МБ.
  • 45. Описание FPGA-суперкомпьютераОписание FPGA-суперкомпьютера MaxwellMaxwell УзлыУзлы суперкомпьютера Maxwellсуперкомпьютера Maxwell объединеныобъединены двумядвумя типами вычислительных сетей. С одной стороны, этотипами вычислительных сетей. С одной стороны, это стандартная сеть Gigabit Ethernetстандартная сеть Gigabit Ethernet, которая соединяет, которая соединяет обычные процессоры и по которой, в частности, в этомобычные процессоры и по которой, в частности, в этом кластере работает MPI. С другой стороны, этокластере работает MPI. С другой стороны, это соединяющая ПЛИС-платысоединяющая ПЛИС-платы сеть RocketIOсеть RocketIO. Она соединяет. Она соединяет все платы в системевсе платы в системе по топологии двумерного тора сопо топологии двумерного тора со скоростью 3.125 Гбит/канал.скоростью 3.125 Гбит/канал.
  • 46.
  • 47. Примеры программПримеры программ На Maxwell решались три типа задач.На Maxwell решались три типа задач. Во-первых, это задача оценки цены опционов приВо-первых, это задача оценки цены опционов при помощи метода Монте-Карло ("Опционы Монте-Карло").помощи метода Монте-Карло ("Опционы Монте-Карло"). Во-вторых, это задача построения трехмерныхВо-вторых, это задача построения трехмерных изображений по набору стереоснимков или стереовидеоизображений по набору стереоснимков или стереовидео ("Построение изображений").("Построение изображений"). Наконец, третья задача ("Поиск нефти и газа") - этоНаконец, третья задача ("Поиск нефти и газа") - это решение на ПЛИС обратной задачи поиска месторожденийрешение на ПЛИС обратной задачи поиска месторождений нефти и газа на основе электромагнитного зондирования.нефти и газа на основе электромагнитного зондирования. Для каждой задачи приведены затраты на разработкуДля каждой задачи приведены затраты на разработку (большую часть его составляет именно написание(большую часть его составляет именно написание прошивок для ПЛИС). Для каждой задачи такжепрошивок для ПЛИС). Для каждой задачи также сравниваются времена ее счета: обычный кластер из Nсравниваются времена ее счета: обычный кластер из N процессоров против системы из N ПЛИС-ов (ЦП в этомпроцессоров против системы из N ПЛИС-ов (ЦП в этом случае не используется для расчетов).случае не используется для расчетов). http://fpga.parallel.ru/maxwell.htmlhttp://fpga.parallel.ru/maxwell.html
  • 48. ЗадачаЗадача ВремяВремя разработкиразработки УскорениеУскорение Опционы Монте-Опционы Монте- КарлоКарло нескольконесколько человеко-недельчеловеко-недель х109 - х322х109 - х322 (разные для(разные для разных типовразных типов ПЛИС)ПЛИС) ПостроениеПостроение изображенийизображений (Image-Based(Image-Based Rendering)Rendering) 6 человеко-6 человеко- месяцевмесяцев х2.52 (один узел,х2.52 (один узел, включаявключая пересылкупересылку данных, без -данных, без - х3.6), х2 (8 узлов)х3.6), х2 (8 узлов) Поиск нефти иПоиск нефти и газагаза 12 человеко-12 человеко- месяцевмесяцев х4.83 (8 узлов)х4.83 (8 узлов)
  • 50. Технологии параллельногоТехнологии параллельного программированияпрограммирования Средства программированияСредства программирования: параллельные: параллельные расширения и диалекты языков – Fortran, C/C++, ADA ирасширения и диалекты языков – Fortran, C/C++, ADA и др.др. MPI – интерфейс передачи сообщенийMPI – интерфейс передачи сообщений.. Особенности:Особенности: Поддерживает несколько режимов передачи данных.Поддерживает несколько режимов передачи данных. Предусматривает гетерогенные вычисления.Предусматривает гетерогенные вычисления. Передача типизированных сообщений.Передача типизированных сообщений. Построение библиотек – MPICH, LAM MPI.Построение библиотек – MPICH, LAM MPI. Наличие вариантов для языков программированияНаличие вариантов для языков программирования C/C++, Fortran.C/C++, Fortran. Поддерживает коллективные операции:Поддерживает коллективные операции: широковещательную передачу, разборку/сборку, операциишироковещательную передачу, разборку/сборку, операции редукции.редукции. Совместимость с многопоточностью.Совместимость с многопоточностью.
  • 51. Национальные и международныеНациональные и международные проекты - МЕТАКОМПЬЮТИНГпроекты - МЕТАКОМПЬЮТИНГ Наиболее известные глобальные проекты, связанные сНаиболее известные глобальные проекты, связанные с вычислительными сетями нового поколения - GRID.вычислительными сетями нового поколения - GRID. CrossGrid - Европейский исследовательский проект,Европейский исследовательский проект, разрабатываемый в тесном сотрудничестве сразрабатываемый в тесном сотрудничестве с European DataGrid.. DataGrid - Проект DataGrid основан ЕвропейскимПроект DataGrid основан Европейским Сообществом.Сообществом. European Grid of Solar Observations (EGSO) - ЕвропейскийЕвропейский проект, работающий в сотрудничестве с NASA.проект, работающий в сотрудничестве с NASA. EUROGRID - Исследовательский проект, созданный в рамкахИсследовательский проект, созданный в рамках европейской программы IST (Information Society Technologies).европейской программы IST (Information Society Technologies). NEESgrid - Проект NEESgrid поддерживается программойПроект NEESgrid поддерживается программой NEES (Network for Earthquake Engineering Simulation)NEES (Network for Earthquake Engineering Simulation) Национального Научного Фонда (NSF) США.Национального Научного Фонда (NSF) США. TeraGrid - Проект TeraGrid, созданный объединеннымиПроект TeraGrid, созданный объединенными усилиями нескольких университетов и лабораторий США в 2001усилиями нескольких университетов и лабораторий США в 2001 г. при поддержке фонда.г. при поддержке фонда.
  • 52. Оценки производительности суперЭВМОценки производительности суперЭВМ Большинство оценочных характеристикБольшинство оценочных характеристик производительности суперЭВМ связано спроизводительности суперЭВМ связано с вычислениями над вещественными числами.вычислениями над вещественными числами. К нимК ним относитсяотносится пиковая производительностьпиковая производительность (ПП)(ПП),, измеряемая в млн. операций с плавающей точкой, которыеизмеряемая в млн. операций с плавающей точкой, которые компьютер теоретически может выполнить за 1 секкомпьютер теоретически может выполнить за 1 сек ((MFLOPSMFLOPS).). ПП - величина, практически не достижимая. ЭтоПП - величина, практически не достижимая. Это связано с проблемами заполнения функциональныхсвязано с проблемами заполнения функциональных конвейерных устройств. Чем больше конвейер, тем большеконвейерных устройств. Чем больше конвейер, тем больше надо "инициализационного" времени для того, чтобы егонадо "инициализационного" времени для того, чтобы его заполнить. Такие конвейеры эффективны при работе сзаполнить. Такие конвейеры эффективны при работе с длинными векторами. Поэтому для оценки векторныхдлинными векторами. Поэтому для оценки векторных суперЭВМ было введено такое понятие, каксуперЭВМ было введено такое понятие, как длинадлина полупроизводительностиполупроизводительности -- длина вектора, при которойдлина вектора, при которой достигается половина пиковой производительностидостигается половина пиковой производительности..
  • 53. БолееБолее реальные оценки производительностиреальные оценки производительности базируются на временах выполнения различныхбазируются на временах выполнения различных тестовтестов. Поскольку большую часть времени выполнения. Поскольку большую часть времени выполнения программ обычно занимают циклы, иногда именно онипрограмм обычно занимают циклы, иногда именно они применяются в качестве тестов, например, известныеприменяются в качестве тестов, например, известные ливерморские циклыливерморские циклы.. Ливерморские циклыЛиверморские циклы -- это набор фрагментовэто набор фрагментов фортран-программ, каждый из которых взят изфортран-программ, каждый из которых взят из реальных программных систем, эксплуатируемых вреальных программных систем, эксплуатируемых в Ливерморской национальной лаборатории им.Ливерморской национальной лаборатории им. Лоуренса (США).Лоуренса (США). В этих фрагментах используютсяВ этих фрагментах используются различные вычислительные алгоритмы: сеточные,различные вычислительные алгоритмы: сеточные, последовательные, волновые, что существенно с точкипоследовательные, волновые, что существенно с точки зрения соответствия вычислительных и аппаратныхзрения соответствия вычислительных и аппаратных структур. Соответствие этих структур друг другу должноструктур. Соответствие этих структур друг другу должно обеспечить максимальную эффективность вычислений.обеспечить максимальную эффективность вычислений.