Вычислительные системы. Их отличительные особенности и принципы построения.

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

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

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

Основные понятия, используемые в ВС:

· ЭВМ (под словом ЭВМ обычно понимают цифровые электронные машины, предназначенные для автоматизации процесса обработки информации).

· Центральный процессор (ЦП обеспечивает непосредственное преобразование данных по заданной программе и осуществляет управление взаимодействием всех устройств ЭВМ. В состав ЦП входит центральное устройство управления, арифметико-логическое (операционное) устройство (АЛУ), внутренняя память процессора (регистровая, сверхоперативная, кэш-память).

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

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

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

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

Принципы построения вычислительных систем (ВС). Выделим “модульность” и “близкодействие” как главные принципы.

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

Модульность вычислительной системы обеспечивает:

· Возможность использования любого модуля заданного типа для выполнения любого соответствующего ему задания пользователя;

· Простоту замены одного модуля на другой однотипный;

· Масштабируемость, т.е. возможность увеличения или уменьшения количества модулей без коренной реконфигурации связей между остальными модулями;

· Открытость системы для модернизации, исключающую ее моральное старение.

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

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

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

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

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

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

Децентрализованное управление системой (в отличие от централизованного) позволяет:

· Достичь живучести ВС, т. е. ее способности продолжать работу при отказах модулей (в том числе и тех, которые предназначены для принятия решений);

· Избежать очередей при обслуживании “заявок” на управление.

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

Архитектурные свойства вычислительных систем

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

Важнейшие свойства архитектуры ВС:

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

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

Универсальность ВС.

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

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

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

Таким образом, вычислительные системы сочетают в себе достоинства цифровой техники, где процесс вычислений в основном задаётся алгоритмически (точнее: программно) и аналоговой техники, где процесс вычислений предопределяется структурными схемами.

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

Производительность.

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

Реконфигурируемость. Структурная и функциональная гибкость ВС вытекает из широких возможностей систем по статической и динамической реконфигурации. Статическая реконфигурация ВС обеспечивается: варьированием числа вычислителей, их структуры и состава; выбором для вычислителей числа полюсов для связи c другими вычислителями; возможностью построения структур в виде графов, относящихся к различным классам; допустимостью применения в качестве связей каналов различных типов, различной физической природы и различной протяжённости и т.п. Благодаря приспособленности ВС к статической реконфигурации достигается адаптация системы под область применения на этапе её формирования.

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

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

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

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

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

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

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

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

· В качестве контрольно-диагностического ядра ВС могут быть использованы любые исправные вычислители и в пределе ядро любого произвольно выбранного вычислителя,

· Выбор ядра системы и определение её исправности могут быть произведены автоматически (с помощью средств ВС).

Предлагаемый подход позволяет говорить о самоконтроле и самодиагностике ВС. Заключение об исправности или неисправности отдельных вычислителей системы принимается коллективно всеми вычислителями на основе сопоставления их индивидуальных заключений об исправности соседних с ними вычислителей.

 

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