Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции КТ.docx
Скачиваний:
70
Добавлен:
30.03.2015
Размер:
133.01 Кб
Скачать

Системы обработки данных (сод)

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

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

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

Типы СОД:

  1. Одномашинные СОД

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

  1. Вычислительные комплексы (ВК).

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

Структурная схема ММВК с косвенной связью

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

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

Структурная схема ММВК с прямой связью

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

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

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

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

  1. Вычислительные системы

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

  1. ВС на основе ЭВМ и ВК общего применения,

  2. ВС на основе специализированных ЭВМ и ВК.

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

  1. Системы телеобработки (СТ)

Системы предназначены для обработки данных, передаваемых по каналам связи называют системами телеобработки.

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

  1. Вычислительные сети

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

Узлы связи (УС) принимают данные и передают их в направлении обеспечить доставку данных абонентам. Ядром сети является базовая сеть передачи данных (СПД), которая включает УС и каналы связи. ЭВМ подключают к узлам базовой сети передачи данных, что обеспечивает обмен данными между любыми каналами ЭВМ.

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

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

- управление аппаратурой сопряжения и каналов связи,

- установление соединений между взаимодействующими процессами и ЭВМ,

- управление процессами передачи данных,

- ввод и выполнение заданий от удаленных терминалов,

- доступ программ к набору данных, размещенных в удаленных ЭВМ.

  1. Локальная вычислительная сеть (ЛВС).

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

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

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

ЛВС является эффективным средством построения сложных СОД на основе мини- и микро-ЭВМ, систем автоматизации проектирования, управления производством, транспортом и т.д.

Классификация СОД

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

Интерфейсы СОД

Существенное влияние на организацию СОД оказывают интерфейсы. Все интерфейсы, используемые СОД, делятся на три класса:

  1. Параллельные

  2. Последовательные

  3. Связанные

Параллельный интерфейс состоит из большого числа линий, данные по которым передаются параллельно, в параллельном коде, в виде 8-128 разрядных слов со скоростью 106-108 бит/сек. Длина линий от нескольких метров до десятков (реже сотен) метров.

Последовательный интерфейс – одна линия. Данные передаются в последовательном коде со скоростью 105 – 10­­­7 бит/сек. Длина – от десятков метров до километров.

Связанные интерфейсы содержат каналы связи с ретранслятором. Скорость передачи данных порядка 103-105 бит/сек. Расстояние не ограничено.

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

Лекция 3.

ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА ДАННЫХ

  1. Большие задачи и суперкомпьютеры. Суперкомпьютеры в компьютерном мире. Примеры современных суперкомпьютеров, Top500, производительность, объемы оперативной и внешней памяти, энергопотребление, размещение. Вычислительно сложные задачи, примеры, разнообразие задач в различных прикладных областях. Развитие элементной базы компьютеров и их архитектуры, их влияние на увеличение производительности компьютеров. Последовательная, параллельная и конвейерная обработка данных. Ускорение выполнения программ. Пиковая и реальная производительность компьютеров. История появления параллелизма и конвейерности в архитектуре компьютеров. Иерархия памяти в компьютерах как средство повышения скорости выполнения программ, локальность вычислений и локальность использования данных, кэш-память. Закон Амдала и его следствия, суперлинейное ускорение. Последовательные и параллельные алгоритмы. Проблема отображения программ и алгоритмов на архитектуру параллельных вычислительных систем. Этапы решения задач на параллельных вычислительных системах.

  2. Архитектура параллельных вычислительных систем. Компьютеры с общей и распределенной памятью, принципы организации, сходства и различия, достоинства и недостатки. Соответствие двум основным задачам параллельных вычислений. Архитектуры SMP, NUMA, ccNUMA. Компьютеры с общей памятью. Коммутация процессоров и модулей памяти, степень неоднородности доступа к памяти. Причины снижения производительности на реальных программах. Компьютеры с распределенной памятью. Вычислительные узлы и коммуникационная сеть, топология связи между узлами, свойства топологий. Вычислительные кластеры: узлы, коммуникационные технологии, программное обеспечение, латентность и пропускная способность, вспомогательные сети. Причины снижения производительности на реальных программах. Скалярные и векторные команды. Скалярные, конвейерные и векторные функциональные устройства. Соотношение между понятиями двух блоков: "функциональное устройство, команда, обработка, компьютер" и "скалярный, векторный, конвейерный". Векторно-конвейерные компьютеры. Структура памяти и регистров, функциональные устройства, различные уровни параллельной и конвейерной обработки. Векторизация программ. Причины снижения производительности на реальных программах. Архитектуры с параллелизмом на уровне машинных команд, VLIW, суперскалярность, EPIC. Мультитредовость/гипертрейдинг. Неоднородные распределенные вычислительные системы и среды, понятие метакомпьютинга. Отличительные свойства вычислительных сред. Понятие GRID, базовые компоненты и сервисы, существующие проекты GRID-сегментов. Компьютеры с реконфигурируемой архитектурой, FPGA, концепция data-flow компьютеров. Современные микропроцессоры, особенности архитектуры, иерархия памяти. Эффективность выполнения программ.

  3. Технологии параллельного программирования. Схемы вычислительного процесса для параллельных программ: SPMD, Мастер/Рабочие. Процессы и нити, адресное пространство, синхронизация, обмен данными. Традиционные последовательные языки и распараллеливающие компиляторы, проблема выделения потенциального параллелизма последовательных программ. Спецкомментарии и директивы компилятору. Расширения существующих языков программирования. Специальные языки параллельного программирования. Программирование с использованием библиотек и интерфейсов передачи сообщений. Параллельные предметные библиотеки. Специализированные пакеты и программные комплексы высокого уровня. Технологии параллельного программирования: эффективность, продуктивность, переносимость. Технологии параллельного программирования MPI, OpenMP, Linda: структура параллельной программы, базовые конструкции, достоинства и недостатки, связь с архитектурой компьютера. Вспомогательный инструментарий для создания эффективных параллельных программ.

  4. Производительность параллельных вычислительных систем. Универсальность и специализация компьютеров, производительность спецпроцессоров. Закон Мура. Методы оценки производительности. Введение единого числового параметра, Mflops, MIPS. Пиковая и реальная производительность компьютеров. Тест Linpack и его варианты. Наборы взаимодополняющих тестовых программ, STREAM, NPB, HPCC, APEX.

  5. Введение в теорию анализа структуры программ и алгоритмов. Графовые модели программ. Граф управления и информационный граф программы, информационная и операционная история реализации программ. Взаимосвязь графовых моделей. Граф алгоритма как компактная параметрическая форма представления информационной истории. Информационная независимость операций и возможность их параллельного исполнения. Построение графа алгоритма для линейного класса программ. Длина критического пути графа алгоритма как мера степени параллельности. Ярусно-параллельная форма графа алгоритма, высота, ширина, каноническая ЯПФ. Виды параллелизма: конечный, массовый, координатный, скошенный. Эквивалентные преобразования программ, элементарные преобразования циклов. Зависимость степени параллелизма программ от формы записи алгоритма и выбора структур данных.

Лекция 4.

Параллельные алгоритмы обработки данных