Cуперскалярные и суперконвейерные процессоры. (Лекция 4а)

Содержание

Слайд 2

Параллельная обработка. Параллельная обработка данных, воплощая идею одновременного выполнения нескольких действий,

Параллельная обработка.

Параллельная обработка данных, воплощая идею одновременного выполнения нескольких действий, имеет

две разновидности: конвейерность и собственно параллельность.
Параллельная обработка. Если некое устройство выполняет одну операцию за единицу времени, то тысячу операций оно выполнит за тысячу единиц. Если предположить, что есть пять таких же независимых устройств, способных работать одновременно, то ту же тысячу операций система из пяти устройств может выполнить уже не за тысячу, а за двести единиц времени. Аналогично система из N устройств ту же работу выполнит за 1000/N единиц времени.
Слайд 3

Конвейерная обработка. Идея конвейерной обработки заключается в выделении отдельных этапов выполнения

Конвейерная обработка.

Идея конвейерной обработки заключается в выделении отдельных этапов выполнения

общей операции, причем каждый этап, выполнив свою работу, передавал бы результат следующему, одновременно принимая новую порцию входных данных. Получаем очевидный выигрыш в скорости обработки за счет совмещения прежде разнесенных во времени операций. Предположим, что в операции можно выделить пять микроопераций, каждая из которых выполняется за одну единицу времени. Если есть одно неделимое последовательное устройство, то 100 пар аргументов оно обработает за 500 единиц. Если каждую микрооперацию выделить в отдельный этап (или иначе говорят - ступень) конвейерного устройства, то на пятой единице времени на разной стадии обработки такого устройства будут находится первые пять пар аргументов, а весь набор из ста пар будет обработан за 5+99=104 единицы времени - ускорение по сравнению с последовательным устройством почти в пять раз (по числу ступеней конвейера).
Слайд 4

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

Направления развития высокопроизводительной вычислительной техники.

1.Векторно-конвейерные компьютеры. Конвейерные функциональные устройства и

набор векторных команд - это две особенности таких машин. В отличие от традиционного подхода, векторные команды оперируют целыми массивами независимых данных, что позволяет эффективно загружать доступные конвейеры, т.е. команда вида A=B+C может означать сложение двух массивов, а не двух чисел. Характерным представителем данного направления является семейство векторно-конвейерных компьютеров CRAY куда входят, например, CRAY EL, CRAY J90, CRAY T90 (в марте 2000 года американская компания TERA перекупила подразделение CRAY у компании Silicon Graphics, Inc.).
Слайд 5

Направления развития высокопроизводительной вычислительной техники. 2. Массивно-параллельные компьютеры с распределенной памятью.

Направления развития высокопроизводительной вычислительной техники.

2. Массивно-параллельные компьютеры с распределенной памятью.

SIMD -(Single Instruction Multiple Data - с одним потоком команд при множественном потоке данных). Термин "матричный процессор" часто применяется к машинам типа SIMD. Состоит из множества однотипных серийные микропроцессоры, каждый из которых снабжен своей локальной памятью и соединен посредством некоторой коммуникационной среды. Однако межпроцессорное взаимодействие в компьютерах этого класса идет намного медленнее, чем происходит локальная обработка данных самими процессорами. Поэтому написать эффективную программу для таких компьютеров очень сложно, а для некоторых алгоритмов иногда просто невозможно. К данному классу можно отнести компьютеры Intel Paragon, IBM SP1, Parsytec, в какой-то степени IBM SP2 и CRAY T3D/T3E. К этому же классу можно отнести и сети компьютеров, которые все чаще рассматривают как дешевую альтернативу крайне дорогим суперкомпьютерам.
Слайд 6

Направления развития высокопроизводительной вычислительной техники. 3.Параллельные компьютеры с общей памятью. MIMD

Направления развития высокопроизводительной вычислительной техники.

3.Параллельные компьютеры с общей памятью. MIMD

(Multiple Instruction Multiple Data - с множественным потоком команд при множественном потоке данных). Термин "мультипроцессор" покрывает большинство машин типа MIMD и часто используется в качестве синонима для машин типа MIMD. В мультипроцессорной системе каждый процессорный элемент (ПЭ) выполняет свою программу достаточно независимо от других процессорных элементов. Процессорные элементы, конечно, должны как-то связываться друг с другом, что делает необходимым более подробную классификацию машин типа MIMD. В мультипроцессорах с общей памятью (сильносвязанных мультипроцессорах) имеется память данных и команд, доступная всем ПЭ. С общей памятью ПЭ связываются с помощью общей шины или сети обмена. В противоположность этому варианту в слабосвязанных многопроцессорных системах (машинах с локальной памятью) вся память делится между процессорными элементами и каждый блок памяти доступен только связанному с ним процессору. Сеть обмена связывает процессорные элементы друг с другом. Проблема - число процессоров, имеющих доступ к общей памяти нельзя сделать большим. В направление входят многие современные многопроцессорные SMP-компьютеры или отдельные узлы компьютеров HP Exemplar и Sun StarFire.
Слайд 7

Направления развития высокопроизводительной вычислительной техники. 4. Компьютеры с кластерной архитектурой. MSIMD

Направления развития высокопроизводительной вычислительной техники.

4. Компьютеры с кластерной архитектурой. MSIMD

(Multiple SIMD).
Направление представляет собой комбинацию предыдущих трех. Из нескольких процессоров (традиционных или векторно-конвейерных) и общей для них памяти сформируем вычислительный узел. Если полученной вычислительной мощности не достаточно, то объединим несколько узлов высокоскоростными каналами. По такому принципу построены CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5, последние модели IBM SP2 и др. Именно это направление является в настоящее время наиболее перспективным для конструирования компьютеров с рекордными показателями производительности.
Для работы вычислительной системы с максимальной эффективностью необходимо тщательное согласование структуры программ и алгоритмов с особенностями архитектуры параллельных вычислительных систем.
Слайд 8

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

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


Слайд 9

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

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


Слайд 10

Модель взаимодействия «Клиент-Сервер» С объединением ПК в сети связано появление модели

Модель взаимодействия «Клиент-Сервер»

С объединением ПК в сети связано появление модели

взаимодействия типа «клиент-сервер»
Сервер-это машина или программный продукт, обладающий и предоставляющий другим для использования свои ресурсы по запросам клиентов. Это понятие включает в себя совокупность как технических, так и программных средств.
Клиент-это потенциальный потребитель этих ресурсов. Ресурсами может быть файловая система (файл-сервер), базы данных (сервер БД), печатающие устройства (сервер-печати), программы (сервер приложений) и т.д.
Слайд 11

3. Модель взаимодействия «Клиент-Сервер» Функции системы «клиент»: Предоставление пользовательского интерфейса; Формирование

3. Модель взаимодействия «Клиент-Сервер»

Функции системы «клиент»:
Предоставление пользовательского интерфейса;
Формирование запросов или команд;
Клиентское

ПО в идеале должно полностью скрывать от пользователя способ общения с сервером;
Клиентское ПО может выполнять анализ результатов, полученных от сервера по запросу и демонстрировать эти результаты пользователю.
Функции системы «сервер»:
Выполнять специфические действия, суть которых определяется запросом клиента и только по инициативе клиента;
Сервер должен полностью скрывать пути, по которым он удовлетворяет запрос клиента.
Слайд 12

3. Модель взаимодействия «Клиент-Сервер» Один из основных принципов технологии «клиент-сервер» заключается

3. Модель взаимодействия «Клиент-Сервер»

Один из основных принципов технологии «клиент-сервер» заключается

в разделении функций информационной системы на три группы:
Функции ввода и отображения информации - компонент представления;
Специфические функции, характерные для данной предметной области - прикладной компонент;
Функции хранения и управления данными - компонент доступа к ресурсам;
В зависимости от того, как эти логические компоненты распределены между компьютерами в сети, возможны несколько вариантов реализации технологии «клиент-сервер».
Слайд 13

3. Модель взаимодействия «Клиент-Сервер» Можно выделить следующие модели реализации технологии «Клиент-Сервер»:

3. Модель взаимодействия «Клиент-Сервер»

Можно выделить следующие модели реализации технологии «Клиент-Сервер»:
Модель файлового

сервера (File Server - FS-модель).
Модель доступа к удаленным данным (Remote Data Access - RDA-модель).
Модель сервера баз данных (Data Base Server - DBS -модель).
Модель сервера приложений (Application Server - AS-модель).
Слайд 14

Модель файлового сервера (FS-модель). Файл-сервер работает под управлением сетевой ОС и

Модель файлового сервера (FS-модель).

Файл-сервер работает под управлением сетевой ОС и играет

роль компонента доступа к информационным ресурсам.

Компонент
представления

Прикладной
компонент

Компонент
доступа к ресурсам

Запросы

Файлы

Клиент

Сервер

Слайд 15

Модель файлового сервера (FS-модель). Недостатки: высокий сетевой трафик; узкий спектр манипуляций

Модель файлового сервера (FS-модель).

Недостатки:
высокий сетевой трафик;
узкий спектр манипуляций с данными;
трудности с

администрированием.
В сетях под управлением OC Novell Netware реализуется именно FS-модель. Сложно построить сеть крупного предприятия.
Слайд 16

Модель доступа к удаленным данным. Модель - RDA более технологична, т.к.

Модель доступа к удаленным данным.

Модель - RDA более технологична, т.к. запросы

к серверу формируются и направляются с помощью унифицированного языка (например SQL-вызовы). Structured Query Language - непроцедурный язык структурированных запросов.

Компонент
представления

Прикладной
компонент

Компонент
доступа к ресурсам

SQL-запросы

Данные

Клиент

Сервер

Слайд 17

Модель доступа к удаленным данным. Преимущества: большой выбор инструментальных средств разработки

Модель доступа к удаленным данным.

Преимущества:
большой выбор инструментальных средств разработки приложений, позволяет

работать с различными БД, снабженных механизмом автоматической генерации кода при работе с SQL - ориентированными СУБД;
данные средства поддерживают графический интерфейс пользователя (GIU-Grafic User Interfase) в MS Windows, стандарт взаимодействия с БД (ODBS - Open DataBase Conntctivity), позволяющий работать с различными БД.
Недостатки:
все еще большая загрузка сети;
сложность администрирования.
Слайд 18

Модель сервера баз данных. Основу составляет механизм вызова хранимых процедур -

Модель сервера баз данных.

Основу составляет механизм вызова хранимых процедур - средство

программирования SQL сервера;
Хранимые процедуры разделяются несколькими клиентами и выполняются на том же компьютере , где функционирует ядро СУБД;
В данной модели прикладной компонент интегрируется в компонент доступа к информационным ресурсам.

Компонент
представления

Прикладной
компонент

SQL-запрос

Компонент
доступа
к ресурсам

Клиент

Сервер

вызов

результат

Слайд 19

Модель сервера баз данных. Достоинства: возможность централизованного администрирования; снижение сетевого трафика;

Модель сервера баз данных.

Достоинства:
возможность централизованного администрирования;
снижение сетевого трафика;
возможность разделения хранимых процедур

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

Модель сервера приложений. В данной модели процесс, выполняемый на компьютере -

Модель сервера приложений.

В данной модели процесс, выполняемый на компьютере - клиенте,

отвечает только за интерфейс пользователя, обращаясь за выполнением услуг к серверу приложений;
Прикладной компонент реализован как группа программ, выполняемых по запросу клиента (пользователя) на сервере (или серверах).
Доступ к информационным ресурсам осуществляет менеджер ресурсов (например, SQL-сервер). Теперь сервер приложений сам является клиентом серверов ресурсов (БД, файлов, почтовых служб и т.д.).
Серверов приложений может быть несколько, и каждый из них предоставляет определенный набор услуг.
Слайд 21

Модель сервера приложений. В этой модели реализуется трехзвенная схема разделения функций.

Модель сервера приложений.

В этой модели реализуется трехзвенная схема разделения функций. Возникает

понятие «тонкого клиента».
Взаимодействие между клиентской и серверными частями осуществляется через унифицированный API - Aphlication Programming Inerface -интерфейс прикладного программирования.

Компонент
представления

Прикладной
компонент

Компонент
доступа к
ресурсам

Компонент
доступа к
ресурсам

Клиент

Сервер

Сервер

API

SQL

SQL