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

Большое разнообразие структур ВС затрудняет их изучение. По­этому вычислительные системы классифицируют с учетом их обоб­щенных характеристик. С этой целью вводится понятие «архитекту­ра системы».

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

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

Согласно этой классификации существует четыре основных ар­хитектуры ВС:

• одиночный поток команд - одиночный поток данных (ОКОД), в английском варианте

SISD - оди­ночный поток инструкций - одиночный поток данных;

• одиночный поток команд — множественный поток данных (ОКМД)

SIMD – одиночный поток инструкций – одиночный поток данных;

• множественный поток команд — одиночный поток данных (МКОД),

MISD - множественный по­ток инструкций - одиночный поток данных;

• множественный поток команд — множественный поток данных (МКМД),

MIMD - множе­ственный поток инструкций - множественный поток данных.

Коротко рассмотрим отличительные особенности каждой из архи­тектур.

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

 
 


Поток команд

 
 


Поток данных Результаты

 
 


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


 
 


Поток команд

П n

П2

П1

Поток данных Результаты

 
 


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

Архитектура МКОД предполагает построение свое­образного процессорного конвейера, в котором результаты обработ­ки передаются от одного процессора к другому по цепочке. Выгоды такого вида обработки понятны. Прототипом таких вычислений мо­жет служить схема любого производственного конвейера. В совре­менных ЭВМ по этому принципу реализована схема совмещения опе­раций, в которой параллельно работают различные функциональные блоки, и каждый из них делает свою часть в общем цикле обработки команды.

 
 


Поток команд

 
 


Поток данных Результаты

 
 


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

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

 
 


Поток команд

Процессоры Пn1 Пn2... Пnx


Процессоры П 21 П22... П2x

       
 
   


Поток данных Результаты

 
 




Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: