Лекция "Вычислительные системы"

Понятие вычислительной системы

В связи с кризисом классической структуры ЭВМ дальнейшее поступательное развитие вычислительной техники напрямую связано с переходом к параллельным вычислениям, с идеями построения многопроцессорных систем и сетей, объединяющих большое количество отдельных процессоров и (или) ЭВМ. Здесь появляются огромные возможности совершенствования средств вычислительной техники. Но следует отметить, что при несомненных практических достижениях в области параллельных вычислений, до настоящего времени отсутствует их единая теоретическая база.

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

Под вычислительной системой (ВС) понимают совокупность взаимосвязанных и взаимодействующих процессоров или ЭВМ, периферийного оборудования и программного обеспечения, предназначенную для сбора, хранения, обработки и распределения информации.

Отличительной особенностью ВС по отношению к ЭВМ является наличие в них нескольких вычислителей, реализующих параллельную обработку. Создание ВС преследует следующие основные цели: повышение производительности системы за счет ускорения процессов обработки данных, повышение надежности и достоверности вычислений, предоставление пользователям дополнительных сервисных услуг и т.д.



Параллелизм в вычислениях в значительной степени усложняет управление вычислительным процессом, использование технических и программных ресурсов. Эти функции выполняет операционная система ВС.

Классификация вычислительных систем

Существует большое количество признаков, по которым классифицируют вычислительные системы.

По назначению вычислительные системы делят на:
  • универсальные
  • специализированные.
Специализированные системы ориентированы на решение узкого класса задач, в отличие от универсальных, предназначенных для широкого спектра задач.

По типу построения вычислительные системы разделяются на:
  • многомашинные
  • многопроцессорные
Это значит, что вычислительные системы могут строиться на базе нескольких компьютеров или на базе нескольких процессоров. В первом случая ВС будет многомашинной, во втором — многопроцессорной.

Многомашинные вычислительные системы (ММС) появились раньше, чем многопроцессорные. Основные отличия ММС заключаются в организации связей и обмена информацией между ЭВМ комплекса. Многомашинная ВС содержит некоторое число компьютеров, информационно взаимодействующих между собой. Машины могут находиться рядом друг с другом, а могут быть удалены друг от друга на некоторое, иногда значительное расстояние (вычислительные сети). В многомашинных ВС каждый компьютер работает под управлением своей операционной системы (ОС). А поскольку обмен информацией между машинами выполняется под управлением ОС, взаимодействующих друг с другом, динамические характеристики процедур обмена несколько ухудшаются (требуется время на согласование работы самих ОС). Информационное взаимодействие компьютеров в многомашинной ВС может быть организовано на уровне:
    • процессоров;
    • оперативной памяти;
    • каналов связи.
При непосредственном взаимодействии процессоров друг с другом информационная связь реализуется через регистры процессорной памяти и требует наличия в ОС весьма сложных специальных программ.

Взаимодействие на уровне оперативной памяти (ОП) сводится к программной реализации общего поля оперативной памяти, что несколько проще, но также требует существенной модификации ОС. Под общим полем имеется в виду равнодоступность модулей памяти: все модули памяти доступны всем процессорам и каналам связи.

На уровне каналов связи взаимодействие организуется наиболее просто и может быть достигнуто внешними по отношению к ОС программами-драйверами, обеспечивающими доступ от каналов связи одной машины к внешним устройствам других (формируется общее поле внешней памяти и общий доступ к устройствам ввода-вывода).

Все вышесказанное иллюстрируется схемой взаимодействия компьютеров в двухмашинной ВС, представленной на рис. 1.


Рис. 1. Схема взаимодействия компьютеров в двухмашинной ВС

Ввиду сложности организации информационного взаимодействия на 1-м и 2-м уровнях в большинстве многомашинных ВС используется 3-й уровень, хотя и динамические характеристики (в первую очередь быстродействие), и показатели надежности таких систем существенно ниже.

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

Однако МПС имеют и существенные недостатки. Они, в первую очередь, связаны с использованием ресурсов общей оперативной памяти. При большом количестве объединяемых процессоров возможно возникновение конфликтных ситуаций, в которых несколько процессоров обращаются с операциями типа ”чтение” и ”запись” к одним и тем же ячейкам памяти. Помимо процессоров к ОП подключаются все процессоры ввода-вывода, средства измерения времени и т.д. Поэтому вторым серьезным недостатком МПС является проблема коммутации и доступа абонентов к ОП. Процедуры взаимодействия очень сильно усложняют структуру ОС МПС. Опыт построения подобных систем показал, что они эффективны при небольшом числе объединяемых процессоров (от 2 до 10). Схема взаимодействия процессоров в ВС показана на схеме рис. 2. Типичным примером массовых многомашинных ВС могут служить компьютерные сети, примером многопроцессорных ВС — суперкомпьютеры.




Рис. 2. Схема взаимодействия процессоров в ВС

По типу ЭВМ или процессоров, используемых для построения ВС, различают:
  • однородные системы
  • неоднородные системы.
Однородная ВС строится на базе однотипных компьютеров или процессоров. Однородные системы позволяют использовать стандартные наборы технических, программных средств, стандартные протоколы (процедуры) сопряжения устройств. Поэтому их организация значительно проще, облегчается обслуживание систем и их модернизация.

Неоднородная ВС включает в свой состав различные типы компьютеров или процессоров. При построении системы приходится учитывать их различные технические и функциональные характеристики, что существенно усложняет создание и обслуживание неоднородных систем.

По методам управления элементами ВС различают:
  • централизованные
  • децентрализованные
  • со смешанным управлением.
В централизованных ВС за управление отвечает главная или диспетчерская ЭВМ (процессор). Ее задачей является распределение нагрузки между элементами, выделение ресурсов, контроль состояния ресурсов, координация взаимодействия. Централизованный орган управления в системе может быть жестко фиксирован или эти функции могут передаваться другой ЭВМ (процессору), что способствует повышению надежности системы. Централизованные системы имеют более простые ОС.

В децентрализованных системах функции управления распределены между ее элементами. Каждая ЭВМ (процессор) системы сохраняет известную автономию, а необходимое взаимодействие между элементами устанавливается по специальным наборам сигналов. С развитием ВС и, в частности, сетей ЭВМ, интерес к децентрализованным системам постоянно растет.

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

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

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

На рис. 3 представлена принципиальная схема классификации вычислительных систем.


Рис. 3. Принципиальная схема классификации вычислительных систем.

Суперкомпьютеры и особенности их архитектуры

К суперкомпьютерам относятся мощные многопроцессорные вычислительные машины с быстродействием сотни миллионов — десятки миллиардов операций в секунду. Создать такие высокопроизводительные компьютеры на одном микропроцессоре (МП) не представляется возможным ввиду ограничения, обусловленного конечным значением скорости распространения электромагнитных волн (300 000 км/с), т.к. время распространения сигнала на расстояние несколько миллиметров (линейный размер стороны МП) при быстродействии 100 млрд операций/с становится соизмеримым со временем выполнения одной операции. Поэтому суперкомпьютеры создаются в виде высокопараллельных многопроцессорных вычислительных систем (МПВС).

Высокопараллельные МПВС имеют несколько разновидностей.
  1. Магистральные (конвейерные) МПВС, у которых процессор одновременно выполняет разные операции над последовательным потоком обрабатываемых данных. По принятой классификации такие МПВС относятся к системам с многократным потоком команд и однократным потоком данных (МКОД или MISD — Multiple Instruction Single Data).
  2. Векторные МПВС, у которых все процессоры одновременно выполняют одну команду над различными данными — однократный поток команд с многократным потоком данных (ОКМД или SIMD — Single Instruction Multiple Data).
  3. Матричные МПВС, у которых микропроцессор одновременно выполняет разные операции над последовательными потоками обрабатываемых данных —многократный поток команд с многократным потоком данных (МКМД или MIMD — Multiple Instruction Multiple Data).
В суперкомпьютере используются все три варианта архитектуры МПВС:
  • структура MIMD в классическом ее варианте;
  • параллельно-конвейерная модификация, иначе MMISD, то есть многопроцессорная (Multiple) MISD-архитектура;
  • параллельно-векторная модификация, иначе MSIMD, то есть многопроцессорная SIMD-архитектура.
Первый суперкомпьютер был задуман в 1960 и создан в 1972 году (машина ILLIAC IV с производительностью 20 MFloPS), а начиная с 1974 года лидерство в разработке суперкомпьютеров захватила фирма Cray Research, выпустившая Cray 1 производительностью 160 MFloPS и объемом оперативной памяти 64 Мбайт.



Рис. 3. Условные структуры однопроцессорной (SISD) и названных многопроцессорных ВС

Кластерные суперкомпьютеры и особенности их архитектуры

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

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

Удобство построения кластерных ВС заключается в том, что можно гибко регулировать необходимую производительность системы, подключая к кластеру с помощью специальных аппаратных и программных интерфейсов обычные серийные серверы до тех пор, пока не будет получен суперкомпьютер требуемой мощности. Кластеризация позволяет манипулировать группой серверов как одной системой, упрощая управление и повышая надежность.

Важной особенностью кластеров является обеспечение доступа любого сервера к любому блоку как оперативной, так и дисковой памяти. Эта проблема успешно решается, например, объединением систем SMP-архитектуры на базе автономных серверов для организации общего поля оперативной памяти и использованием дисковых систем RAID для памяти внешней (SMP — Shared Memory multiprocessing, технология мультипроцессирования с разделением памяти).

Для создания кластеров обычно используются либо простые однопроцессорные персональные компьютеры, либо двух- или четырех- процессорные SMP-серверы. При этом не накладывается никаких ограничений на состав и архитектуру узлов. Каждый из узлов может функционировать под управлением своей собственной операционной системы. Чаще всего используются стандартные ОС: Linux, FreeBSD, Solaris, Unix, Windows NT. В тех случаях, когда узлы кластера неоднородны, то говорят о гетерогенных кластерах.

При создании кластеров можно выделить два подхода.
  1. Первый подход применяется при создании небольших кластерных систем. В кластер объединяются полнофункциональные компьютеры, которые продолжают работать и как самостоятельные единицы, например, компьютеры учебного класса или рабочие станции лаборатории.
  2. Второй подход применяется в тех случаях, когда целенаправленно создается мощный вычислительный ресурс. Тогда системные блоки компьютеров компактно размещаются в специальных стойках, а для управления системой и для запуска задач выделяется один или несколько полнофункциональных компьютеров, называемых хост-компьютерами. В этом случае нет необходимости снабжать компьютеры вычислительных узлов графическими картами, мониторами, дисковыми накопителями и другим периферийным оборудованием, что значительно удешевляет стоимость системы.
Основные достоинства кластерных суперкомпьютерных систем:
  • высокая суммарная производительность;
  • высокая надежность работы системы;
  • наилучшее соотношение производительность/стоимость;
  • возможность динамического перераспределения нагрузок между серверами;
  • легкая масштабируемость, то есть наращивание вычислительной мощности путем подключения дополнительных серверов;
  • удобство управления и контроля работы системы.
Наряду с достоинствами, как и у любой технологии, у кластеризации имеются свои недостатки:
  • задержки разработки и принятия общих стандартов;
  • большая доля нестандартных и закрытых разработок различных фирм, затрудняющих их совместное использование;
  • трудности управления одновременным доступом к файлам;
  • сложности с управлением конфигурацией, настройкой, развертыванием, оповещениями серверов о сбоях и т.п.

Практически это можно использовать так:

1 пример из «жизни» систем

Компания ASUSTeK распространила информацию о двух новых Barebone системах T2-P и T2-R. Обе системы имеют одинаковые размеры 190x310x300мм, а также процессор - Intel Socket 478 Northwood/Prescott до P4 3.4+ GHz. Другие характеристики несколько отличаются, приведем их последовательно для каждой системы:
  • память: T2-P: PC1600/PC2100/PC2700/PC3200, до 2Гб, 2 DIMM слота
  • память: T2-R: PC1600/PC2100/PC2700, до 2Гб, 2 DIMM слота;
  • материнская плата: P4P8T, Intel 865G / ICH 5, 800/533/400МГц FSB
  • материнская плата: P4R8T, ATI RS300/IXP200, 800/533/400MГц FSB;
  • видео: интегрированная 64Mб
  • ATI Radeon 9100, DVI, 64Mб;
  • слоты: одинаковы для обеих систем: PCI, AGP 8x;
  • сеть: 10/100Mбит/с, Wireless 802.11b WiFi
  • сеть: 10/100Мбит/с;
  • аудио: 6-канальный AC97 S/PDIF выход кнопки Audio DJ, Audio CD, FM radio studio
  • аудио: 6-канальный AC97 S/PDIF выход;
  • карты памяти: Compact Flash Type I/II, Microdrive, Memory Stick, Memory Stick Pro, Secure Digital, MultiMedia Card, Smart Media Card
  • карты памяти: нет;
  • отсеки для приводов: 3.5 FDD, 3.5 HDD, 5.25 ODD
  • отсеки для приводов: 3.5 FDD, 3.5 HDD, 5.25 ODD;
  • выходы на задней панели: 4xUSB 2.0, PS/2 клавиатура, PS/2 мышь, VGA (D-SUB), Game / MIDI, RJ-45 LAN (10/100 Мбит/с), Line-in/out, выход динамиков, FM антенна, антенна адаптера 802.11b, GIGA LAN, ТВ-тюнер
  • выходы на задней панели: 2xUSB 2.0, PS/2 клавиатура, PS/2 мышь, VGA (D-SUB), Game / MIDI, RJ-45 LAN(10/100 Мбит/с), Line-in/out, выход наушников, FM антенна

2 пример из «жизни» суперкомпьютеров
Корпорация IBM представила прототип суперкомпьютера Blue Gene. Окончание же всех работ над ним и его официальный выпуск запланированы на середину 2005 года.

Blue Gene будет установлен в Ливерморскую национальную лабораторию им. Лоуренса. Основные его задачи - моделирование погодных условий и изучение космического пространства.

Blue Gene будет состоять из 130 тысяч процессоров, и его производительность будет составлять 360 терафлопс.

3 пример из «жизни» суперкомпьютеров
Список Top500 (http://www.top500.org/) - это список из 500 самых мощных суперкомпьютеров, составляемый учеными университета Мангейма, университета штата Теннесси и Национальной лаборатории Лоуренса в Беркли. Он публикуется дважды в год накануне конференции по суперкомпьютерам и позволяет следить за ростом вычислительной мощности мировой компьютерной элиты.

Чипы IBM используются в системе, неформально называемой Big Mac. PowerPC 970 состоит из 1100 двухпроцессорных компьютеров Apple G5, занимая в общем списке третью строчку, с производительностью в 10,3 триллионов операций в секунду.

Процессоры Opteron используются в 2816-процессорном кластере, и его производительность составляет 8 триллионов операций в секунду.

Интересен факт, что общая производительность 500 лучших систем растет экспоненциально, увеличиваясь в десять раз примерно каждые четыре года. Порог в 1000 терафлопов (триллионов операций в секунду) планируется достигнуть к 2005 году.

Самые прочные позиции в списке у HP или IBM: соотношение числа систем - 165 против 159 в пользу HP
Comments