вычислительные системы в информатике. вычислительные системы (копия). В россии в xvixvii веках появилось намного более передовое изобретение
Скачать 0.79 Mb.
|
Вычислительные системы: структура, архитектура и принципы построения. Возможности дальнейшего повышения быстродействия ЭВМ за счет совершенствования элементной базы и сокращения времени на обмен информацией между устройствами и блоками машины ограничиваются физическими пределами. Время переключения используемых в вычислительной технике запоминающих и логических элементов достигло наносекунд, а скорость распространения сигналов в линиях связи ограничивается скоростью света (30 см/нс). В связи с этим значительное повышение быстродействия ЭВМ, необходимость в котором диктуется практикой (проведение сложных научно-технических расчетов, реализация многомерных экономико-математических моделей и т. д.), не может быть достигнута дальнейшим уменьшением времени переключения электронных схем. Наиболее эффективный и широкореализуемый путь — повышение уровня совмещения во времени выполняемых в ЭВМ операций, распространение принципа параллелизма на сами устройства обработки информации, создание многомашинных и многопроцессорных (мультипроцессорных) вычислительных систем, в которых производится распараллеливание во времени выполнения одной программы (одновременное выполнение автономных частей программы) или параллельная реализация нескольких программ. Вычислительная система (ВС) — это совокупность взаимосвязанных и взаимодействующих процессоров или ЭВМ, периферийного оборудования и программного обеспечения, предназначенных для автоматизации процессов приема, хранения, обработки и выдачи информации и ориентированных либо на достижение сверхвысокой производительности, либо на повышение надежности и живучести средств вычислительной техники ( СВТ ). Создание ВС преследует следующие основные цели: сокращение времени выполнения некоторого объема вычислительных работ; увеличение эффективности использования аппаратных средств системы, повышение надежности функционирования СВТ; предоставление максимума удобств пользователям. По сравнению с автономно используемыми однопроцессорными ЭВМ вычислительные системы имеют рядпреимуществ, обусловленных эффектами комплексирования СВТ, которые можно объединить в три группы. Улучшение использования скомплексированных ЭВМ (процессоров). Здесь основными эффектами являются: общие программные средства (при прочих равных условиях в ВС можно сосредоточить большее количество единиц общесистемных программных модулей, обрабатывающих программ, трансляторов, ППП, сервисных программ); распараллеливание, т. е. одновременное решение частей одной и той же задачи на различных ЭВМ системы; функциональная специализация, т. е. специализация процессоров или ЭВМ системы в зависимости от классов решаемых задач или организации режима их решения; общая память (объединение в ВС групп различных ЗУ повышает ее возможности); общие внешние устройства (обеспечивается более интенсивная загрузка этих устройств, а следовательно, с помощью меньшего количества ВУ осуществляется необходимая производительность центральных устройств ВС). Улучшение технической эксплуатации скомплексированных ЭВМ (процессоров): централизованное обслуживание (для обслуживания ВС требуется меньшее количество специалистов и сервисного оборудования), сглаживание пиковых нагрузок (при необходимости все вычислительные мощности системы могут быть использованы для решения срочных задач, а при отсутствии последних система выполняет программы, заранее скомпонованные в пакеты, тем самым сводятся к минимуму случаи простоя или перегрузки вычислительных мощностей). Повышение надежности и достоверности решения задач: эффект «горячего» резервирования (одна и та же задача решается на двух или нескольких ЭВМ или процессорах, а затем сравниваются результаты; при их совпадении они считаются достоверными, в противном случае производятся повторная проверка и отключение неисправной машины), эффект «холодного» резервирования (при отказе одной из ЭВМ или одного из процессоров системы решение задачи передается на другую машину и продолжается, начиная с некоторой «опорной точки»). Вычислительные системы относятся к категории сложных систем. При рассмотрении вопросов, связанных с их построением и функционированием, выделяют элементы системы и подсистемы как составные части структуры ВС. Элемент системы — объект системы, не подлежащий дальнейшему расчленению на части при данном ее рассмотрении. Предметом изучения является не внутренняя структура элемента, а такие его свойства, которые определяют взаимодействие этого элемента с другими элементами системы или влияют на свойства системы в целом. Подсистема — часть системы, представляющая собой совокупность некоторых ее элементов, выделенных по определенному функциональному признаку, и отличающаяся подчиненностью по своей цели функционирования единой цели функционирования всей системы. Структура ВС— это организация системы из отдельных элементов с их взаимосвязями, которые определяются распределением функций, выполняемых ВС. В зависимости от уровня детализации при данном рассмотрении структуры ВС в качестве ее элементов могут пониматься отдельные модули системы вплоть до ЭВМ в целом. Важным понятием является архитектура ВС — совокупность характеристик и параметров, определяющих функционально-логическую и структурную организации системы. Понятие архитектуры ВС охватывает комплекс общих вопросов ее построения, существенных в первую очередь для пользователя, интересующегося возможностями (свойствами) системы, а не деталями ее технического исполнения. Свойства ВС определяются наличием в ее структуре аппаратных и программных средств и распределением функций между ними. Комплекс программных средств регулярного применения, предназначенный для придания ВС определенных свойств, повышения эффективности ее использования, облегчения эксплуатации и снижения трудоемкости подготовительной работы при решении задач, образуетсистемное программное обеспечение(СМО) ВС. В состав СМО входят: программы, управляющие работой ВС (операционная система ВС); система автоматизации программирования (САП); пакеты прикладных программ общего пользования и расширяющие возможности операционной системы; комплекс программ технического обслуживания ВС. Основные принципы построения ВС заключаются в следующем: обеспечении работы в различных режимах; модульности структуры технических и программных средств; унификации и типизации технических и программных средств; согласованности пропускных способностей отдельных функциональных частей системы; иерархии в организации управления процессом функционирования; способности системы к самоорганизации, самонастройке, адаптивности к изменению условий функционирования. Система называется самоорганизующейся, если в ней на основании оценки воздействия внешней среды путем последовательного изменения своих свойств заложены возможности перехода к некоторому устойчивому состоянию, когда воздействия внешней среды сказываются в допустимых пределах. В ВС возможность к самонастройке заложена преимущественно в структуре и функциях управляющей программы ОС. Примеры самонастройки: автоматическое перераспределение ресурсов системы с увеличением числа активных абонентов; повышение уровня мультипрограммной работы, т. е. увеличение числа одновременно обслуживаемых запросов абонентов, если ставится задача обеспечения минимального времени ожидания обслуживания, и др.; обеспечении максимальных удобств абонентов в общении их с системой. Это достигается за счет развитой сети технических средств ввода, вывода, регистрации и отображения информации; использования современных средств автоматизации программирования; обеспечения независимости работы абонентов при подготовке своих программ; обеспечения доступа абонентов к базам данных и знаний, стандартным программам, пакетам прикладных программ, имеющимся в структуре информационного и программного обеспечения ВС; обеспечения гарантированной защиты индивидуальных программ и информационных массивов абонентов от несанкционированного доступа. Многомашинные (ММС) и многопроцессорные вычислительные системы (МПС). Эти вычислительные системы называют также параллельными вычислительными системами (ПВС), поскольку в них осуществляется параллельная обработка данных. Основные различия между ММС и МПС заключаются в следующем. ММС включает несколько ЭВМ, каждая из которых имеет свою оперативную память и работает под управлением своей операционной системы. Каждая машина использует другую как канал или устройство ввода-вывода, каким бы ни был их общий интерфейс. Обмен информацией между машинами происходит в результате взаимодействия их операционных систем. В МПС все процессоры работают с общей ОП (т. е. имеется общее поле ОП) и управление обеспечивается одной общей операционной системой. При этом достигаются более быстрый обмен информацией между процессорами, чем между ЭВМ в ММС и более высокая суммарная производительность системы. Существует достаточно большое количество различных признаков, по которым можно классифицировать ПВС: по целевому назначению и выполняемым функциям; числу ЭВМ или процессоров и их типу; структуре, режимам работы и методам управления элементами системы; степени разобщенности элементов системы и др. Однако основными классификационными признаками являются признаки структурной и функциональной организации ПВС. По назначениюПВС делятся на универсальные и специализированные. Универсальные системы предназначены для решения задач любого типа, специализированные — для решения задач определенного круга или класса. Специализация определяется не только характером решаемых задач и ограниченностью их перечня, но и наличием в структуре системы элементов специального назначения: преобразователей информации, устройств сопряжения с внешними объектами, специальных устройств отображения информации и др. К числу специализированных ПВС относятся управляющие системы, обеспечивающие управление объектами или процессами в реальном масштабе времени. По типу ЭВМ или процессоров,из которых комплектуются ПВС, различают однородные системы, составленные из однотипных машин (процессоров), и неоднородные. Неоднородные ММС состоят из ЭВМ различного типа, а в неоднородных МПС используются различные специализированные процессоры: для обработки десятичных чисел, для реализации некоторых функций ОС, для матричных задач и др. В однородных системах упрощаются вопросы обеспечения программной совместимости на любом уровне, облегчается решение задачи резервирования для повышения надежности, упрощается техническое обслуживание системы, удешевляется ее реконструкция, модернизация и, в случае необходимости, наращивание производительности, а самое главное — гораздо проще решаются вопросы по управлению работой системы во всех режимах, по организации вычислительного процесса. Однако для однородных систем характерно в ряде случаев неполное использование их производительности, что определяется непостоянством степени загруженности отдельных ЭВМ (процессоров). Часто возникает необходимость иметь в составе ПВМ машины различной производительности, что диктуется требованиями функциональной специализации отдельных подсистем ПВС (например, ЭВМ подсистемы связи с абонентами могут иметь меньшую производительность, чем ЭВМ обработки информации). В этом случае рациональным решением является построение системы на базе унифицированных ЭВМ, составляющих семейство или ряд ЭВМ, т. е. построение неоднородной системы. По степени территориальной разобщенностивычислительных модулей ПВС делятся на два типа: системы совмещенного (сосредоточенного) типа и распределенные (разобщенного типа). К первому типу относятся системы, в которых время передачи информации от одной машины ПВС к другой, необходимое для решения некоторой задачи, пренебрежимо мало по сравнению с временем решения этой задачи на одной из них. Информация передается по линиям связи между машинами, как правило, в параллельном коде. В распределенных системах (сетях ЭВМ) отдельные ЭВМ находятся на значительных расстояниях и обмениваются информацией по каналам связи через специальную аппаратуру в последовательном коде. Время, затрачиваемое на обмен, в этом случае соизмеримо с временем решения задач в системе и должно учитываться при исследовании процесса функционирования системы, в частности при оценке ее производительности. Многопроцессорные системы строятся обычно совмещенного типа. По методам управления элементами ПВС делятся на централизованные, децентрализованные и со смешанным управлением. В централизованных ПВС осуществляется полная централизация управления элементами системы. Все функции управления сосредоточены в специально выделенной центральной управляющей машине (или в центральном процессоре), называемой главной машиной. Главная машина (центральный процессор) распределяет нагрузку между другими ЭВМ (процессорами) системы, обеспечивая сокращение общего времени на выполнение вычислений, координирует работу машин и их взаимодействие в процессе решения задач. В однородных ПВС функции главной машины может выполнять любая ЭВМ, что способствует повышению надежности системы. В децентрализованных системах функции управления распределены между отдельными элементами системы. Единого, четко фиксированного органа, управляющего процессом функционирования ПВС, нет. Каждая ЭВМ (процессор) системы при решении задач действует автономно, а вычислительный процесс организуется за счет передачи между машинами специального набора сигналов. В системах со смешанным управлением в некоторой пропорции реализуются принципы централизованного и децентрализованного управления. Вся система разбивается на группы взаимодействующих ЭВМ (процессоров), в каждой из которых осуществляется централизованное управление. По структурным признакамПВС можно классифицировать следующим образом: по числу уровней иерархии в структуре системы; степени обобществления модулей памяти различного типа; топологии управляющих и функциональных связей между машинами (процессорами) системы; возможности перестройки системы; принципу распределения функций между элементами системы. По числу уровней иерархии в структуре ПВС различают одноуровневые и многоуровневые системы. В многоуровневых иерархических системах средства управления распределены по нескольким уровням. Например, при двух уровнях управления система разбивается на группы взаимодействующих элементов с локальным управлением в пределах каждой группы (это первый уровень управления). На втором уровне управления с помощью некоторого управляющего элемента осуществляется взаимодействие выделенных групп элементов системы. Типовой иерархической многоуровневой структурой является структура ярусного типа (рис. 13.1, а), когда каждый элемент более высокого яруса управляет функционированием нескольких элементов соседнего низшего яруса. Частным случаем иерархической структуры служит ПВС узловой структуры с главной машиной (центральным процессором), т. е. с централизованным управлением (рис. 13.1,6). По степени обобществления модулей памяти или по структуре памяти выделяют системы с жестким и свободным разделением памяти. В последнем случае все ЭВМ (процессоры) системы имеют доступ ко всем модулям памяти, т. е. память является общей. Могут быть и промежуточные решения. Например, обобществляются только внешняя память и часть оперативной памяти при наличии автономной ОП у каждой ЭВМ системы. По топологии управляющих и функциональных связей различают структуры ПВС с однородными и неоднородными связями. Две машины системы называются функционально связанными, если от одной из них к другой возможна передача функциональной информации (программ, исходных и промежуточных данных решаемых задач, результатов обработки данных). Если функциональная информация передается только в одну сторону, то система называется ориентированной по функциональным связям, если в обе стороны — неориентированной. Могут быть и частично ориентированные системы, в которых присутствуют ориентированные и неориентированные подсистемы. Две машины системы называются связанными по управлению, если от одной из них к другой поступает управляющая информация, необходимая для правильного функционирования ПВС как Рис. 4.1. Структуры параллельных вычислительных систем: а — иерархическая ярусного типа; б — узловая; в— одноуровневая однородная по связям единой системы. Если связи по управлению всегда ориентированы в одну сторону, система называется направленной, в противном случае — ненаправленной. Каналы связи для передачи этих двух видов информации (функциональной и управляющей) могут быть совмещенными и раздельными. Система называется однородной по связям, если связи между ее машинами организованы по принципу «каждая с каждой». Если этот принцип не выполняется, система относится к типу неоднородных по связям. Системы с однородными связями обычно являются децентрализованными с одноуровневой структурой (рис.4.1. , в). Система относится к типу систем с постоянной структурой, если в процессе ее функционирования состав функциональных и управляющих связей и их ориентация остаются неизменными. В противном случае система называется ВС с переменной структурой. Особенностью таких систем является возможность реконфигурации. Реконфигурация — это процесс перераспределения подсистем системы в соответствии с новыми функциональными задачами или процесс, связанный с выведением неисправных подсистем и введением резервных при их наличии. Развитые средства обеспечения реконфигурации (программное обеспечение, реализующее алгоритмы управления реконфигурацией, специальная коммутационная аппаратура, резервные элементы) служат основой построения адаптивных и самоорганизующихся систем обработки информации. По принципу закрепления вычислительных функцийза отдельными ЭВМ (процессорами) различают системы с жестким и системы с плавающим закреплением функций. Жесткое закрепление, хотя и позволяет использовать для хранения программ надежно работающие постоянные ЗУ, приводит к значительному уменьшению гибкости системы. В связи с этим системы с жестким закреплением функций за вычислительными средствами строятся сравнительно редко, они могут быть только специализированными. По временному режиму работыразличают системы, работающие в оперативном и неоперативном временных режимах. Первые предназначены для работы в реальном масштабе времени. Для них характерна высокая степень автоматизации процессов приема информации, ее обработки. Роль оператора в этих процессах сведена к минимуму. В системах, работающих в неоперативном временном режиме, роль оператора значительно выше. Его вмешательство может быть связано с прерыванием процесса обработки информации. В зависимости от того, какая главная цель преследуется при построении вычислительных систем, их целесообразно разделить на две группы : ПВС, ориентированные главным образом на достижение сверхвысокой производительности; ПВС, ориентированные главным образом на повышение надежности и живучести. Системы, принадлежащие к первой группе, являются преимущественно многопроцессорными вычислительными системами. Типовые вычислительные структуры и режимы их работы. С момента появления первых систем было опробовано большое количество разнообразных структур систем, отличающихся друг от друга различными техническими решениями. Практика показала, что каждая структура вычислительной системы эффективно обрабатывает лишь задачи определенного класса. При этом необходимо, чтобы структура вычислительной системы максимально соответствовала структуре решаемых задач. Только в этом случае система обеспечивает максимальную производительность. Универсальной структуры вычислительной системы, одинаково хорошо обрабатывающей задачи любого типа, не существует. Классификация уровней программного параллелизма включает в себя шесть позиций: независимые задания, отдельные части заданий, программы и подпрограммы, циклы и итерации, операторы и команды, фазы отдельных команд. Для каждого из них имеются специфические свойства параллельной обработки, апробированные в различных структурах вычислительных систем. Заметим, что данный перечень совершенно не затрагивает этапы выбора алгоритмов решения, на которых могут анализироваться альтернативные алгоритмы (а значит, и программы), дающие различные результаты. Для каждого вида параллельных работ имеются структуры вычислительных средств, используемые в различных вычислительных системах. Верхние три уровня, включающие независимые задания, шаги или части заданий и отдельные программы, имеют единое средство параллельной обработки -мультипроцессирование, т.е. многопроцессорные вычислительные системы, относящиеся к архитектуре МКМД. Программные циклы и итерации требуют использования векторной обработки (архитектура ОКМД). Операторы и команды, выполняемые ЭВМ, ориентированы на многофункциональную обработку. Параллельная обработка фаз последовательно выполняемых команд приводит к организации конвейера команд. Рассмотрим возможные структуры вычислительных систем, которые обеспечивают перечисленные виды программного параллелизма. ОКОД-структуры. Данный тип архитектуры объединяет любые системы в однопроцессорном (одномашинном) варианте. За пятьдесят лет развития электронной вычислительной техники классическая структура ЭВМ претерпела значительные усовершенствования. Однако основной принцип программного управления не был нарушен. Данная структура оказалась сосредоточенной вокруг оперативной памяти, так как именно цепь “процессор - оперативная память” во многом определяет эффективную работу компьютера. При выполнении каждой команды необходимо неоднократное обращение к оперативной памяти : выбор команды, операндов, отсылка результатов и т.д. Можно перечислить большое число приведенных улучшений классической структуры ЭВМ, ставших в настоящее время определенными стандартами при построении новых ЭВМ: иерархическое построение памяти ЭВМ, появление сверхоперативной памяти и кэш-памяти, относительная и косвенная адресация памяти, разделение процессов ввода-вывода и обработки задач, появление систем прерывания и приоритетов и т.д. В этом ряду следует рассматривать и организацию конвейера последовательно выполняемых команд: формирование адреса команды; выбор команды; формирование адресов и выбор операндов; выполнение команды; запись результата. Однако примитивная организация памяти (память линейна и одномерна) не позволяет организовать длинный и эффективный конвейер. Линейные участки современных программ редко превышают десяток, полтора последовательно выполняемых команд. Поэтому конвейер часто перезапускается, что снижает производительность ЭВМ в целом. Многофункциональная обработка также нашла свое место при построении ЭВМ. Например, даже в персональных ЭВМ, построенных на микропроцессорах i486 и Pentium, в состав ЭВМ могут включаться и другие специализированные средства обработки: умножители, делители, сопроцессоры или блоки десятичной арифметики, сопроцессоры обработки графической информации и другие. Все они совместно с центральным процессором ЭВМ позволяют создавать своеобразные микроконвейеры, целью которых является повышение скорости вычислений. В последние годы широко используется еще несколько модификаций классической структуры. В связи с успехами микроэлектроники появилась возможность построения RISC-компьютеров ( Reduced Instruction Set Computing ), т.е. ЭВМ с сокращенным набором команд. Большие ЭВМ предыдущих поколений не имели большой сверхоперативной памяти, поэтому они имели достаточно сложную систему команд CISC (Complete Instruction Set Computing) - вычисления с полной системой команд). В этих машинах большую долю команд составляли команды типа “память-память”, в которых операнды и результаты операций находились в оперативной памяти. Время обращения к памяти и время вычислений соотносились примерно 5:1. В RISC - машинах с большой сверхоперативной памятью большой удельный вес составляют операции “регистр-регистр” и отношение времени обращения к памяти по времени вычислений составляет 2:1. Поэтому в RISC-ЭВМ основу системы команд составляют наиболее употребительные, “короткие” операции типа алгебраического сложения. Сложные операции выполняются как подпрограммы, состоящие из простых операций. Это позволяет значительно упростить внутреннюю структуру процессора, уменьшить фазы дробления конвейерной обработки и увеличить частоту работы конвейера. Но здесь необходимо отметить, что за эффект приходится расплачиваться усложнением процедур обмена данными между регистрами сверхоперативной памяти и кэш-памяти с оперативной памятью. Другой модификацией классической структуры ЭВМ является VLIW (Very Large Instuction Word) - ЭВМ с “очень длинным командным словом”. ЭВМ этого типа выбирает из памяти суперкоманду, включающую несколько команд. Здесь возможны варианты. В самом простом случае это приводит к появлению буфера команд (кэш-команд) с целью ускорения конвейера операций. В более сложных случаях в состав суперкоманд стараются включать параллельные команды, не связанные общими данными. Если процессор ЭВМ при этом построен из функционально независимых устройств (устройства алгебраического сложения, умножения, сопроцессоры), то в этом случае обеспечивается максимальный эффект работы ЭВМ. Но это направление связано с кардинальной перестройкой процессов трансляции и исполнения программ. Здесь значительно усложняются средства автоматизации программирования. |