Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Состав и свойство вычислительных систем

Содержание:

Введение

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

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

Цель данной работы - изучить состав и свойства вычислительных систем, их информационное и математическое обеспечение.

Задачи данной работы:

- рассмотреть понятие и классификацию вычислительных систем;

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

- рассмотреть состав вычислительных систем;

- рассмотреть информационное и математическое обеспечение вычислительных систем;

- выделить основные проблемы построения вычислительных систем;

- выявить перспективы развития вычислительных систем.

Объектом данного исследования являются вычислительные системы.

Предмет данного исследования - структура вычислительных систем.

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

1.1 Понятие и классификация вычислительных систем

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

Параллелизм в вычислениях в значительной степени усложняет управление вычислительным процессом, использование технических и программных ресурсов. Эти функции выполняет операционная система (ОС) вычислительной системы. Основные принципы построения ВС, представлены на рисунке 1.[6]

Рис. 1 - Принципы построения вычислительных систем

Под структурой вычислительной системы понимают совокупность её элементов и их связей. Элементами в данном случае являются отдельные компьютеры и (или) процессоры.

Классификацию вычислительных систем проводят по признакам, основные из которых представлены на рисунке 2. [11]

Рис. 2 - Классификация вычислительных систем.

По назначению вычислительные системы подразделяются на универсальные и специализированные. Универсальные применяют для решения широкого круга задач. В то время как специализированные ориентированы на решение узкого класса задач. Специализация ВС устанавливается различными средствами:

- структура ВС ориентирована на определенные виды обработки;

- структура ВС содержит специальное оборудование и пакеты.

По типу вычислительные системы делятся на многомашинные и многопроцессорные (рисунок 3). [2]

https://studfiles.net/html/2706/209/html_vFSR0U_F1A.ru7B/htmlconvd-1RVtvs146x1.jpg

Рис. 3 – Типы ВС: а – многомашинные комплексы; б – многопроцессорные системы

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

1) обе машины решают одну и ту же задачу и периодически сверяют результаты, это повышает достоверность результата;

2) обе машины параллельно решают разные задачи, сохраняя возможность обмена информацией, это повышает производительность. [6]

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

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

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

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

Неоднородные ВС комплексируются из элементов, сильно отличающихся по своим техническим и функциональным характеристикам. Такие системы используются в многопроцессорных системах. [2]

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

Многопроцессорные системы относятся к системам совмещенного типа. Учитывая успехи микроэлектроники (СБИС), появляется возможность иметь в одном кристалле несколько параллельно работающих процессоров.

В совмещенных и распределенных многомашинных системах оперативность взаимодействия зависит от удаленности ЭВМ. Современные ЭВМ оснащены средствами прямого взаимодействия и средствами подключения к сетям (модем). [6, 11]

По методам управления элементами ВС различают централизованные, децентрализованные и со смешанным управлением.

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

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

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

По принципу закрепления вычислительных функций за отдельными ЭВМ (процессорами) различают системы с жестким и плавающим закреплением функций. [1]

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

Таким образом, существует обширная классификация вычислительных систем. Кроме того, вычислительные системы различаются архитектурой.

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

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

Архитектуры вычислительных систем существуют в четырех вариациях, представленных на рисунке 4:

1. одиночный поток команд – одиночный поток данных (ОКОД) или Single Instruction Single Data (SISD) – однопроцессорная архитектура;

2. множественный поток команд – одиночный поток данных (МКОД), или Multiple Instruction Single Data (MISD) – конвейерная архитектура;

3. одиночный поток команд – множественный поток данных (ОКМД) или Single Instruction Multiple Data (SIMD) – векторная архитектура;

4. множественный поток команд – множественный поток данных (МКМД), или Multiple Instruction Multiple Data (MIMD) – матричная архитектура. [11]

https://studfiles.net/html/2706/209/html_vFSR0U_F1A.ru7B/htmlconvd-1RVtvs148x1.jpg

Рис. 4 – Архитектуры ВС: а – SISD (однопроцессорная); б – MISD (конвейерная); в – SIMD (векторная); г – MIMD (матричная)

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

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

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

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

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

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

Векторно-конвейерная структура компьютера предполагает конвейер операций, где элементы векторов проходят обработку параллельно, а результаты таких операций записываются последовательно в единую память. Такую структуру имеют однопроцессорные суперкомпьютеры серии VP фирмы Fujitsu; C90, М90, Т90 фирмы CrayResearch; Сrау-3, Сrау-4 фирмы CrayComputer и т.д. В них применяются векторные операции с векторами определенной длины, выполняемые над векторными регистрами. [9]

Архитектуру ОКМД имеет технология ММХ (Multimedia Extensions). В ней объединены подход классической CISC-архитектуры (Pentium), архитектуры ОКМД и ряд простых (RISC) команд параллельной обработки данных. Она разработана для ускорения выполнения мультимедийных и коммуникационных программ с добавлением новых типов данных и новых инструкций.

Архитектура МКМД предполагает, что все процессоры системы работают по своим программам с собственными потоками команд. Такие процессоры могут быть автономными и независимыми. ВС такого типа используют в крупных вычислительных центрах. По способу взаимодействия процессоров такие системы бывают с сильной и слабой связью. [8]

Сильно-связанные вычислительные системы, или многопроцессорные вычислительные системы (МПВС), основаны на объединении процессоров на общем поле оперативной памяти, называемой разделяемой памятью (Shared Memory). Количество параллельных процессов невелико, они находятся под управлением единой ОС. Производительность данных систем не увеличивается пропорционально количеству процессоров. Например, сложнейшие средства снижения межпроцессорных конфликтов в оперативной памяти суперкомпьютеров серии CRAY X-MP/Y-MP позволяют получить коэффициент ускорения не более 3,5 для четырехпроцессорной конфигурации системы.

По виду межмодульных функциональных и управляющих связей и организации работы выделяют два типа многопроцессорных систем МКМД: с общей шиной и с использованием многовходовой памяти. [6]

Многопроцессорные вычислительные системы с общей шиной называют архитектура SMP (Shared Memory Proccessing), в такой системе все процессоры, модули памяти, устройств ввода-вывода подсоединены к одной общей шине межмодульных связей. Архитектура SMP стала своего рода стандартом для многопроцессорных серверов, например, НР9000 и DEC Alpha Server AXP.

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

Вычислительные системы со слабой связью, или распределенные многомашинные вычислительные системы (ММВС), представлены многомашинными комплексами, где отдельные компьютеры объединены либо с помощью сетевых средств, либо с помощью общей внешней памяти. Каждая ЭВМ системы имеет свою оперативную память и работает под управлением своей ОС. Одним из примеров таких систем являются системы с массовым параллелизмом (МРР), состоящие из множества процессорных узлов. Такая структура использует стандартные микропроцессоры и обладает неограниченным быстродействием. Однако программирование коммутаций процессов является слабо автоматизированной и сложной процедурой. [8]

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

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

1.3 Свойства вычислительных систем

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

1. Масштабируемость (Scalability) вычислительных систем.

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

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

3. Универсальность ВС. Вычислительные системы алгоритмически и структурно универсальны.

Алгоритмическая универсальность подразумевает способность реализовать алгоритм решения поставленной задачи без изменения своих структур. Так как, вычислительная система состоит из элементов (вычислителей), каждый из которых алгоритмически универсален, следовательно, и вся система универсальная.

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

4. Производительность вычислительных систем

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

5. Реконфигурируемость вычислительных систем

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

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

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

2. Структура и проблемы построения вычислительных систем

2.1 Состав вычислительных систем

Состав вычислительной системы называется конфигурацией. Различают аппаратную и программную конфигурации, которые, как правило, рассматривают отдельно. Такой принцип разделения имеет принципиальное значение, так как довольно часто одни и те же задачи могут быть решены как аппаратными, так и программными средствами. Критериями выбора аппаратного или программного обеспечения являются производительность и эффективность. Состав вычислительной системы представлен на рисунке 5. [5]

Рис. 5 - Состав вычислительной системы

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

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

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

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

Параллельные интерфейсы имеют более сложное устройство, однако они и обеспечивают более высокую производительность. Такие интерфейсы используют при решении задач, при которых важна скорость передачи данных: для подключения печатающих устройств, устройств ввода графической информации, устройств записи данных на внешний носитель и т. п. Производительность параллельных интерфейсов измеряют байтами в секунду (байт/с; Кбайт/с; Мбайт/с), а последовательных - битами в секунду (бит/с, Кбит/с, Мбит/с). [1]

Программное обеспечение, или программы — это упорядоченные последовательности команд. Конечная цель любой компьютерной программы — управление аппаратными средствами. Программное и аппаратное обеспечение в компьютере работают в неразрывной связи и в непрерывном взаимодействии.

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

Базовое программное обеспечение отвечает за взаимодействие с базовыми аппаратными средствами. Такие программы непосредственно входят в состав базового оборудования и хранятся в специальных микросхемах - постоянные запоминающие устройства (ПЗУ). Программы и данные записываются в микросхемы ПЗУ на этапе производства и не могут быть изменены в процессе эксплуатации. Когда изменение базовых программных средств во время эксплуатации является технически целесообразным, вместо микросхем ПЗУ применяют перепрограммируемые постоянные запоминающие устройства (ППЗУ).

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

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

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

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

ПО прикладного уровня - комплекс программ, позволяющих решать конкретные задачи на рабочем месте. Круг решаемых задач программами данного уровня достаточно широк и включает в себя как производственные задачи, так и развлекательные, обучающие и другие. [2]

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

2.2 Информационное и математическое обеспечение вычислительных систем

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

Так, система автоматической проверки орфографии в текстовом документе основана на сравнении лексических единиц текста с предварительно загруженным массивом данных, в данном случае - словарем.

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

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

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

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

Следующим этапом автоматизации программирования было создание алгоритмических языков высокого уровня. Имеется свыше тысячи алгоритмических языков различного назначения, применение которых существенно сокращает затраты на разработку и создание программ.

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

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

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

Не только для ядерной физики, но и для многих других отраслей науки и техники созданы большие проблемно-ориентированные комплексы программ. Среди них комплексы программ для обработки информации в молекулярной биологии и кристаллофизике, электро- (ЭПАК) и сейсморазведке (СЕИСПАК) полезных ископаемых, программные комплексы для автоматизации проектирования, для автоматизированных систем управления (АСУ) в народном хозяйстве и многие др. Как правило, создание программы для решения той или другой задачи с использованием проблемно-ориентированных систем сводится к подготовке ее описания на языке, являющемся управляющим, входным языком системы и построенным на основе определений и понятий, используемых в данной области науки, техники. [11]

Таким образом, математическое обеспечение ВС состоит из двух уровней.

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

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

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

2.3 Проблемы построения вычислительных систем

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

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

Меньшая степень использования общего оборудования предусматривает обобществление части модулей основной оперативной памяти при сохранении центральными частями комплексируемых ЭВМ своих модулей оперативной памяти. [4]

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

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

Обязательным условием согласованной работы комплексируемых в ВС средства является их совместимость, которая бывает программной, информационно-логической и аппаратной. [10, 12]

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

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

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

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

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

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

3. Перспективы развития вычислительных систем

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

ДНК-компьютеры представляют собой систему, которая использует вычислительные возможности молекул ДНК. Нити ДНК состоят из четырех азотистых оснований: цитозина, аденина, гуанина и тимина. Разработчики установили, что при связывании их в определенной последовательности можно кодировать информацию. Для изменения данных используют специальные ферменты, которые с помощью химических реакций достраивают цепочки ДНК, а также разрезают и укорачивают их. Такие реакции можно проводить в разных частях молекулы одновременно, что позволяет выполнять параллельные вычисления. [7]

Впервые компьютер на базе ДНК был представлен в 1994 году. Профессор молекулярной биологии и компьютерных наук Леонард Адлеман использовал несколько пробирок с миллиардами молекул ДНК, чтобы попытаться решить задачу коммивояжера для графа с семью вершинами. Его вершины и ребра Адлеман обозначил фрагментами ДНК с двадцатью азотистыми основаниями, а затем применил метод полимеразной цепной реакции (ПЦР).

Основным недостатком данного компьютера была его узкая специализация, так как он был настроен на решение одной задачи и не мог выполнять другие. Благодаря новейшим разработкам в конце марта 2019 год ученые из университета Мейнут и Калифорнийского технологического института представили компьютер, данные в который загружаются в виде последовательностей ДНК и могут быть перепрограммированы. Предполагается, что такая система ляжет в основу разработок нового типа вычислительных систем. На данный момент проводятся работы по решению проблемы с медленным вводом и выводом данных. [8]

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

Еще одним направлением являются нейроморфные процессоры.

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

О создании нейроморфных систем говорили еще в 1990-х. Но всерьез разработками в этой области занялись после 2000-х. Специалисты из IBM Research приняли участие в проекте SyNAPSE, целью которого была разработка компьютера с архитектурой, отличной от архитектуры фон Неймана. В рамках этого проекта компания спроектировала чип TrueNorth. Он эмулирует работу миллиона нейронов и 256 миллионов синапсов. [7]

Компания Intel с 2017 года разрабатывает нейроморфный чип Loihi. В его составе 130 тысяч искусственных нейронов и 130 млн. синапсов. Год назад компания завершила разработку прототипа по 14-нм техпроцессу.

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

Разработки нейроморфных чипов основываются главным образом на высоких вычислительных способностях человеческого мозга.

По данным ряда исследований, мозг обладает потенциальной производительностью в один эксафлопс. Традиционные суперкомпьютеры такой вычислительной мощности пока только разрабатываются — первые машины ожидают не раньше 2021 года. При этом мозг обладает крайне высокой энергоэффективностью. [7, 8]

Конечно, искусственные системы обладают существенными ограничениями. Нейронные сети отличаются от биологических аналогов неспособностью «запомнить» прошлые навыки при обучении новой задаче. Алгоритм, натренированный на распознавание собак, не сможет различать людей. Однако ожидается, что нейроморфные чипы откроют новые возможности для обучения «многозадачных» нейронных сетей и решат подобные проблемы.

Первые попытки создать искусственные нейроны предпринимались еще в 60-х годах прошлого века. Тогда один из будущих изобретателей микропроцессора Тэд Хофф (Ted Hoff) вместе с профессором из Стэнфорда Бернардом Уидроу (Bernard Widrow) создали одноуровневую нейросеть на основе мемисторов — электрохимических резисторов с функцией памяти. Считается, что эта разработка положила начало нейроморфной инженерии.

В 80-х годах инженер Карвер Мид (Carver Mead) предложил использовать транзисторы в качестве аналоговых компонентов, а не цифровых переключателей. В 90-х команда во главе с Мидом представила искусственный синапс, способный хранить информацию продолжительное время, и нейроморфный процессор на основе транзисторов с плавающим затвором.

Американский президент Джордж Буш-старший, в то же время, объявил о начале «Десятилетия мозга» и призвал спонсировать программы, направленные на изучение этого органа. Все это дало толчок к развитию нейроинформатики и вычислительной нейробиологии и привело к созданию инфраструктуры для дальнейшего изучения темы. [8]

В последние годы знания о работе мозга вышли на новый уровень. С 2013 года Швейцария занимается развитием проекта Human Brain Project (HBP). В том же году Америка запустила программу BRAIN Initiative. Данные проекты сильно повлияли на сферу систем искусственного интеллекта и привели к появлению новых нейроморфных технологий.

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

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

Также одним из приоритетных направлений развития вычислительных систем являются квантовые машины.

Основу квантовых компьютеров составляют кубиты. Их работа основывается на принципах квантовой физики — запутанности и суперпозиции. Суперпозиция позволяет кубиту находиться в состоянии нуля и единицы одновременно. Запутанность — это явление, при котором состояния нескольких кубитов оказываются взаимосвязанными. Такой подход позволяет проводить операции с нулем и единицей одновременно. [7]

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

На сегодняшний день развитием квантовых вычислений занимается относительно небольшое число компаний. Среди них можно выделить IBM с их 50-кубитным квантовым компьютером, Intel с 49-кубитным и InoQ, которая тестирует 79-кубитное устройство. Также в этой области работают Google, Rigetti и D-Wave.

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

Так, в начале 2019 года компания IBM представила квантовый компьютер, который может работать за пределами лаборатории с жестко контролируемой средой — например, в локальных дата-центрах компаний. Несмотря на это, в продаже аппарат пока не появился, однако можно арендовать его мощности через облачную платформу. По заявлению компании, в будущем этот компьютер будет доступен любому желающему. [7, 8]

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

Заключение

На основании проведенного исследования можно сделать следующие выводы.

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

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

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

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

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

За последнее время знания в области изучения человеческого мозга достигли нового уровня, в связи с этим, исследования ведутся в данном направлении, как одном из самых перспективных на современном этапе.

Список использованной литературы

  1. Емельянов С.В. Информационные технологии и вычислительные системы. М.: Ленанд. 2015. 96 c.
  2. Замятина О.М. Вычислительные системы, сети и телекоммуникации. Моделирование сетей. Люберцы: Юрайт. 2016. 159 c.
  3. Идельчик В.И. Электрические системы и сети: Учебник для вузов. М.: Альянс. 2016. 592 c.
  4. Ковалёв С.П. Теоретико-категорный подход к проектированию вычислительных систем // Программные системы: теория и приложения. - 2015. - № 6. - С. 3-10.
  5. Максимов Н. В., Партыка Т. Л., Попов И. И. Архитектура ЭВМ и вычислительных систем: учебник. - М.: ФОРУМ: ИНФРА-М. 2016. 512 с.
  6. Мелехин В.Ф. Вычислительные машины, системы и сети. М.: Academia. 2017. 304 c.
  7. Мелихова О. А., Григораш А. С., Джамбинов С. В. Некоторые аспекты теории нейронных систем // Молодой ученый. — 2015. — №16. — С. 196-199.
  8. Митропольский Ю. И. Мультиархитектурные вычислительные суперсистемы. Перспективы развития. М.: Техносфера. 2016. 146 c.
  9. Новожилов О. П. Архитектура ЭВМ и систем: учебное пособие для академического бакалавриата. М.: Юрайт. 2018. 527 с.
  10. Печенко И. С. Способы представления спецификаций вычислительных систем: проблемы и возможности машинной обработки // Информационные технологии. - 2016. - №10. - С. 676-683.
  11. Степина В. В. Архитектура ЭВМ и вычислительные системы: учебник. М.: КУРС: ИНФРА-М. 2018. 384 с.
  12. Федюнин Р. Н. Оценка пространственной сложности функциональных блоков АЛУ на базе однородных вычислительных структур // Информационные технологии. - 2015. - №5. - С. 356-361.