Архитектура ВС
Вычислительные системы (ВС) – э то комплекс аппаратных и программных средств, предназначенный для организации вычислительных процессов.
Вычислительная система (ВС) – совокупность взаимосвязанных и взаимодействующих процессоров или ЭВМ. периферийного оборудования и программного обеспечения, предназначенная для сбора, хранения, обработки и распределения информации.
Создание ВС преследует следующие основные цели:
ü повышение производительности системы за счет ускорения процессов обработки данных;
ü повышение надежности и достоверности вычислений;
ü предоставление пользователям дополнительных сервисных услуг и т. д.
Отличительной особенностью ВС по отношению к классическим ЭВМ является наличие в ней нескольких вычислителей, реализующих параллельную обработку.
Параллелизм выполнения операций существенно повышает быстродействие системы; он может также значительно повысить и надежность (при отказе одного компонента системы его функции может взять на себя другой), и достоверность функционирования системы, если операции будут дублироваться, а результаты их выполнения сравниваться.
Если не вдаваться в подробности, ВС прежде всего можно разделить на:
ü многомашинные:
ü многопроцессорные.
Понятие ВС сформировалось при появлении многопроцессорных ЭВМ и комплексов объединенных ЭВМ, целью создания которых было повышение производительности за счет распараллеливания вычислений. ВС создавались для решения сложных задач и обработки больших массивов данных за приемлемое время. ВС характеризуется своей архитектурой, которая определяет направление и взаимодействие потоков команд и данных. Большое разнообразие ВС породило естественное желание ввести для них какую-то классификацию. Эта классификация должна однозначно относить ту или иную ВС к некоторому классу, который, в свою очередь, должен достаточно полно ее характеризовать. Таких попыток предпринималось множество, что отразилось в большом количестве видов классификации ВС (классификация Фенга, Скилликорна, Дункана и др.). Одна из первых классификаций, ссылки на которую наиболее часто встречаются в литературе, была предложена М. Флинном в конце 60-х годов 20-го века. Она базируется на понятиях двух потоков: команд и данных. На основе числа этих потоков выделяется четыре класса архитектур:
· SISD (Single Instruction Single Data) - единственный поток команд и единственный поток данных. По сути дела это классическая машина фон Неймана. К этому классу относятся все однопроцессорные системы.
· SIMD (Single Instruction Multiple Data) - единственный поток команд и множественный поток данных. Типичными представителями являются матричные компьютеры, в которых все процессорные элементы выполняют одну и ту же программу, применяемую к своим (различным для каждого ПЭ) локальным данным.
· MISD (Multiple Instruction Single Date) - множественный поток команд и единственный поток данных. М. Флинн не смог привести ни одного примера реально существующей системы, работающей на этом принципе.
· MIMD (Multiple Instruction Multiple Date) - множественный поток команд и множественный поток данных. К этому классу относятся практически все современные многопроцессорные системы.
Существенные архитектурные признаки вычислительных систем.
Наибольшие архитектурные изменения произошли в машинах третьего поколения, в ВС построенных на ИС. В этом поколении можно выделить ряд существенных признаков.
· По элементной базе - переход от дискретных полупроводниковых элементов к интегральным схемам (ИС). Это уменьшило габариты, энергоемкость, повысило надежность ВС.
· По структуре данных и команд - переход к стандартным структурам: байт (6, в дальнейшем 8 бит); полуслово (16 бит, 2 байта); слово (32 бит, 4 байта); двойное слово (64 бит, 8 байт). В ВС введено несколько форматов команд, имеющих в целом побайтовую структуру.
· В центральном процессоре введена система прерывания.
· Все управление ВС автоматизировано, верхний уровень автоматизации осуществляет комплекс программ, объединенный в операционную систему (ОС). ОС является неотъемлемой частью ВС, без которой она работать не может. Пользователь общается с ВС через ОС, которая синхронизирует работу аппаратной части ВС через систему прерываний и таймер - электронные часы.
· ВС работает в многопрограммном режиме работы.
· Усилена иерархия памяти; ОЗУ делится на блоки с независимыми системами управления, могущие работать одновременно, в процессоре появляются элементы ограниченной сверхбыстродействующей памяти на электронных регистрах. Ячеечная структура ОЗУ дополняется более крупным структурным объединением - страницей, сегментом.
· Значительно расширена номенклатура и число периферийных устройств и устройств внешней памяти, в том числе вводятся в качестве основного устройства внешней памяти магнитные диски НМД (накопители на магнитных дисках).
· Несколько моделей одной архитектуры, отличающихся производительностью, но программно совместимых "снизу вверх" с совместимыми для всех моделей периферийными и внешними запоминающими устройствами, объединены в одно семейство (ряд).
· Введены специальные периферийные процессоры (каналы) для управления ВЗУ и периферией.
Основополагающие принципы (параллелизма, программируемости, однородности) и принципы модульности и близкодействия позволяют достичь полноты архитектурных свойств в вычислительных системах. Отметим важнейшие свойства архитектуры ВС. При этом заметим, что не все свойства и не в полной мере могут проявляться в той или иной реализации ВС.
Масштабируемость (Scalability) вычислительных систем
Под масштабируемостью ВС понимается их способность к наращиванию и сокращению ресурсов, возможность варьирования производительности. Сложность (трудоемкость) задач, решаемых на вычислительных средствах, постоянно растет. Для сохранения в течении длительного времени за вычислительной системой способности быть адекватным средством решения сложных задач необходимо, чтобы она обладала архитектурным свойством масштабируемости. Это означает, в частности, что производительность, достигнутую ВС на заданном количестве вычислителей, можно увеличить, добавив еще один или несколько вычислителей. Выполнение этого свойства ВС гарантируется принципами модульности, локальности, децентрализованности и распределённости.
Свойство наращиваемости производительности предоставляет потенциальную возможность решать задачи любой априори заданной сложности. Однако для практической реализации этой возможности требуется, чтобы алгоритм решения сложной задачи удовлетворял условию локальности, а межмодульные пересылки информации слабо влияли на время решения задачи. Это может быть достигнуто за счет крупноблочного распараллеливания сложных задач и (или) аппаратурных средств, позволяющих совместить межмодульные обмены информацией с вычислениями.
Универсальность ВС. Вычислительные системы алгоритмически и структурно универсальны.
Принято считать, что ЭВМ (основанные на модели вычислителя) являются алгоритмически универсальными, если они обладают способностью (без изменения своих структур) реализовать алгоритм решения любой задачи. С другой стороны, ВС – это коллектив вычислителей, каждый из которых обладает алгоритмической универсальностью, следовательно, и система универсальна (в общепринятом смысле).
В вычислительных системах могут быть реализованы не только любые алгоритмы, доступные ЭВМ, но и параллельные алгоритмы решения сложных задач. Последнее следует из определений модели коллектива вычислителей и, в частности, алгоритма функционирования ВС.
Структурная универсальность ВС – следствие воплощения архитектурных принципов коллектива вычислителей, в частности, принципа программируемости структуры. Суть этого принципа – возможность автоматически (программно) порождать специализированные (проблемно-ориентированные) виртуальные конфигурации, которые адекватны структурам и параметрам решаемых задач.
Таким образом, вычислительные системы сочетают в себе достоинства цифровой техники, где процесс вычислений в основном задаётся алгоритмически (точнее: программно) и аналоговой техники, где процесс вычислений предопределяется структурными схемами.
Структурная универсальность позволяет говорить и о специализированности ВС: для каждой задачи допустима автоматическая настройка такой конфигурации из ресурсов ВС, которая наиболее адекватна алгоритму решения задачи. Итак, вычислительная система – это средство, в котором диалектически сочетаются противоположные свойства универсальности и специализированности.