Типовые структуры вычислительных систем
С момента появления первых систем было опробовано большое количество разнообразных структур систем, отличающихся друг от друга различными техническими решениями. Наиболее интересными являются структуры вычислительных систем построенные на принципе программного параллелизма.
Классификация уровней программного параллелизма включает в себя шесть позиций: независимые задания, отдельные части заданий, программы и подпрограммы, циклы и итерации, операторы и команды, фазы отдельных команд.
Рассмотрим возможные структуры вычислительных систем, которые обеспечивают перечисленные виды программного параллелизма.
ОКОД-структура объединяет любые системы в однопроцессорном (одномашинном) варианте. За пятьдесят лет развития электронной вычислительной техники классическая структура ЭВМ претерпела значительные усовершенствования. Однако основной принцип программного управления не был нарушен. Данная структура оказалась сосредоточенной вокруг оперативной памяти, так как именно цепь “процессор - оперативная память” во многом определяет эффективную работу компьютера.
В последние годы широко используется несколько модификаций классической структуры.
В связи с успехами микроэлектроники появилась возможность построения RISC-компьютеров (Reduced Instruction Set Computing), т.е. ЭВМ с сокращенным набором команд.
Большие ЭВМ предыдущих поколений не имели большой сверхоперативной памяти, поэтому они имели достаточно сложную систему команд CISC (Complete Instruction Set Computing - вычисления с полной системой команд). В этих машинах большую долю команд составляли команды типа “память-память”, в которых операнды и результаты операций находились в оперативной памяти. Время обращения к памяти и время вычислений соотносились примерно 5:1.
В RISC-машинах с большой сверхоперативной памятью большой удельный вес составляют операции “регистр-регистр” и отношение времени обращения к памяти по времени вычислений составляет 2:1. Поэтому в RISC-ЭВМ основу системы команд составляют наиболее употребительные, “короткие” операции типа алгебраического сложения. Сложные операции выполняются как подпрограммы, состоящие из простых операций. Это позволяет значительно упростить внутреннюю структуру процессора, уменьшить фазы дробления конвейерной обработки и увеличить частоту работы конвейера.
Другой модификацией классической структуры ЭВМ является VLIW (Very Large Instuction Word) - ЭВМ с “очень длинным командным словом”. ЭВМ этого типа выбирает из памяти суперкоманду, включающую несколько команд. VLIW-компьютеры могут выполнять суперскалярную обработку, т.е. одновременно выполнять две или более команд, что использовалось в целом ряде структур суперЭВМ.
МКОД-структуры большой практической реализации не получили. Задачи, в которых несколько процессоров могли эффективно обрабатывать один поток данных, в науке и технике неизвестны.
МКМД-структуры являются наиболее интересным классом структур вычислительных систем. Уже из названия МКМД-структур видно, что в данных системах можно найти все перечисленные виды параллелизма. Этот класс дает большое разнообразие структур, сильно отличающихся друг от друга своими характеристиками (рис. 1.5).
Рис.1.5. Типовые структуры ВС в МКМД (MIMD)-клacce
В сильносвязанных системах достигается высокая оперативность взаимодействия процессоров посредством общей оперативной памяти. При этом пользователь имеет дело с многопроцессорными вычислительными системами.
Наиболее простыми по строению и организации функционирования являются однородные симметричные структуры. Они обеспечивают простоту подключения процессоров и не требуют очень сложных централизованных операционных систем, размещаемых на одном из процессоров. Однако при построении таких систем возникает много проблем с использованием общей оперативной памяти. Число комплексируемых процессоров не может быть велико, оно не превышает 16.
Появление мощных микропроцессоров типа “Pentium” привело к экспериментам по созданию многопроцессорных систем на их основе. Так, для включения мощных серверов в локальные сети персональных компьютеров была предложена несколько измененная структура использования ООП - SMP (Shared Memory multiProcessing - мультипроцессирование с разделением памяти), согласно которой на общей шине оперативной памяти можно комплексировать до четырех микропроцессоров.
Слабосвязанные МКМД-системы могут строиться как многомашинные комплексы или использовать в качестве средств передачи информации общее поле внешней памяти на дисковых накопителях большой емкости.
Невысокая оперативность взаимодействия заранее предопределяет ситуации, в которых число межпроцессорных конфликтов при обращении к общим данным и к друг другу было бы минимальным. Для этого необходимо, чтобы ЭВМ комплекса обменивались друг с другом с небольшой частотой, обеспечивая автономность процессов (программы и данные к ним) и параллелизм их выполнения. Только в этом случае обеспечивается надлежащий эффект. Эти проблемы решаются в сетях ЭВМ.
Успехи микроинтегральной технологии и появление БИС и СБИС позволяют расширить границы и этого направления. Возможно построение систем с десятками, сотнями и даже тысячами процессорных элементов, с размещением их в непосредственной близости друг от друга. Подобные ВС получили название систем с массовым параллелизмом (МРР - Mass-Parallel Processing).
Передача данных в МРР-системах предполагает обмен не отдельными данными под централизованным управлением, а подготовленными процессами (программами вместе с данными). Этот принцип построения вычислений уже не соответствует принципам программного управления классической ЭВМ. Передача данных процесса по его готовности больше соответствует принципам построения “потоковых машин” (машин, управляемых потоками данных). Подобный подход позволяет строить системы с громадной производительностью и реализовывать проекты с любыми видами параллелизма, например, перейти к “систолическим вычислениям” с произвольным параллелизмом. Однако для этого необходимо решить целый ряд проблем, связанных с описанием, программированием коммутаций процессов и управлением ими. Математическая база этой науки в настоящее время практически отсутствует.