Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебники 80389

.pdf
Скачиваний:
7
Добавлен:
01.05.2022
Размер:
43.33 Mб
Скачать

 

 

 

 

Таблица 8.5.

Тип интерфейса

Частота опроса, Гц

 

 

 

Стандартная

 

Win XP

Максимальная

 

Win 9x

Win NT/2000

 

Последователь-

40

60

≈ 60

≈ 60

ный

 

 

100

 

PS/2

40

60

200

USB

125

125

125

125

Частота опроса порта PS/2 повышалась по мере совершенствования операционной системы, максимальное значение 200 Гц при ручной регулировке. Регулировка осуществляется штатными средствами в ХР (в списке устройств отображается мышь и далее расширенные свойства).

Разрешение. Для оптических мышей за разрешение принимают число замеров или "фотографий", которые совершает мышь на пройденном расстоянии. Оно выражается в Counts Per Inch (cpi) - числе замеров на единицу длины (дюйм, 2,54 см). Производители обычно используют термин "dpi" (по аналогии с монитором), но он отражает число точек на дюйм.

Чем больше будет замеров, тем будет точнее позиционирование и реагирование на перемещение. При этом возрастает скорость курсора мыши.

Современные производители (рис.8.56) позволяют регулировать разрешение мыши в зависимости от используемого приложения, например

400/800/1600/2000 cpi.

Джойстик (от англ. joy stick — веселая палочка) — обычно это стержень-ручка (рис. 8.57), применяемая для летных имитаторов или для игр, в которых оживленные объекты должны точно позиционироваться путем изменения положения ручки (влево, вправо, вверх, вниз, направо или налево вполоборота), и имеется кнопка со статусом «огонь».

Рис.8.57. Различные конструкции джойстиков.

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

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

251

Известно, что подобный манипулятор использовался в советских зе- нитно-ракетных комплексах «Байкал», правда, диаметр шарика этого трекбола был около 8 см. На сегодняшний момент такие манипуляторы практически не используются, и даже из традиционных для них портативных компьютеров их практически вытеснили манипуляторы на основе сенсорных панелей Touch Pad (в них управление курсором идет за счет перемещения пальца по панели). IBM производит устройство, называемое Trackpoint, которое может использоваться и как мышь (шариком вниз), и как Trackball (шариком вверх). В большинстве случаев в Trackball установлен шарик гораздо большего размера, чем в стандартной мыши. С точки зрения дизайна Trackball идентичен мыши по базовым функциям и электрической «начинке», но отличается ориентацией и размером шарика.

Глава 9. Вычислительные системы

9.1. Основные понятия

Вычислительные системы (ВС) бывают: многомашинные и многопроцессорные.

Многомашинная вычислительная система. Несколько процессоров,

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

Многопроцессорная архитектура. Несколько процессоров в компью-

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

УУ

УУ

УУ

АЛУ

АЛУ

АЛУ

 

ОЗУ

 

Рис.9.1. Архитектура многопроцессорной ВС

252

Архитектура с параллельными процессорами. Здесь несколько АЛУ рабо-

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

УУ

АЛУ

АЛУ

АЛУ

 

ОЗУ

 

Рис.9.2. Архитектура с параллельными процессорами

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

9.2.Уровни и средства комплексирования. Логические и физические уровни

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

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

1)прямого управления (процессор - процессор);

2)общей оперативной памяти;

3)комплексируемых каналов ввода-вывода;

4)устройств управления внешними устройствами (УВУ);

5)общих внешних устройств.

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

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

253

ОС1ОС2

Процессор 1

Уровень 1

Процессор 2

 

 

Уровень 2

 

Оперативная память 1

 

Оперативная память 2

Каналы связи 1

 

Каналы связи 2

Внешние устройства 1

Уровень 3, 4, 5

Внешние устройства 2

 

Рис. 9.3. Уровни комплексирования вычислительных систем

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

Уровень общей оперативной памяти (ООП) является наиболее пред-

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

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

Уровень устройств управления внешними устройствами (УВУ) пред-

полагает использование встроенного в УВУ двухканального переключателя и команд «зарезервировать» и «освободить». Двухканальный переключатель позволяет подключать УВУ одной машины к селекторным каналам различных ЭВМ. По команде «зарезервировать» канал — инициатор обмена имеет доступ через УВУ к любым накопителям на дисках НМД или на магнитных лентах НМЛ. На самом деле УВУ магнитных дисков и лент — совершенно

254

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

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

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

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

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

Уровни 1, 3, 4, 5 обеспечивают построение разнообразных машинных комплексов. Особенно часто используется третий в комбинации с четвертым. Целесообразно их дополнять и первым уровнем.

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

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

255

9.3.Классификация архитектуры вычислительных систем с параллельной обработкой данных

Цели, которым должна служить хорошо построенная классификация архитектур:

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

подсказывать новые пути организации архитектур — речь идет о тех классах, которые в настоящее время по разным причинам пусты;

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

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

Коротко рассмотрим отличительные особенности каждой из архитектур.

 

 

 

 

 

 

Таблица .9.1 Классификация Флинна

 

 

 

 

 

Поток команд

 

 

Поток дан-

 

 

 

 

 

ных

 

одиночный

 

множественный

 

 

 

 

 

 

 

 

 

 

 

 

SISD - Single

Instruction

stream /

MISD - Multiple Instruction stream /

 

 

Одиночный

Single Data stream (Одиночный по-

Single Data stream (Множественный по-

 

 

 

 

ток Команд и

Одиночный поток

ток Команд и Одиночный поток Данных

 

 

 

 

Данных - ОКОД)

 

- МКОД)

 

 

Множест-

SIMD - Single Instruction stream /

MIMD - Multiple Instruction stream /

 

 

Multiple Data

stream (Одиночный

Multiple Data stream (Множественный

 

 

венный

поток Команд

и Множественный

поток Команд и Множественный поток

 

 

 

 

поток Данных - ОКМД)

 

Данных - МКМД)

 

Архитектура ОКОД (SISD) охватывает все однопроцессорные и одномашинные варианты систем, т. е. с одним вычислителем. Все ЭВМ классической структуры попадают в этот класс. Здесь параллелизм вычислений обеспечивается путем совмещения выполнения операций отдельными блоками АЛУ, а также параллельной работой устройств ввода-вывода информации и процессора.

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

256

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

 

Память команд

 

 

Память команд

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поток команд

 

 

 

Поток команд

 

 

 

П 1

 

 

 

 

П 1 П 2

П 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поток данных

 

 

 

Результаты

Поток данных

 

 

Результаты

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Память данных

a)

Память данных

б)

Память команд

Поток команд

П 1

П 2

П 3

Память команд Поток команд

П 1

П 2

П 3

П 1

П 2

П 3

 

 

 

П 1

П 2

П 3

 

 

 

Поток данных

 

Результаты

 

Поток данных

 

Результаты

 

 

 

 

 

 

 

Память данных

в)

Память данных

г)

Рис. 9.4. Классификация Флинна: а - SISD; б - MISD; в - SIMD; г - MIMD

щие реализуемым математическим зависимостям. Как правило, эти связи напоминают матрицу, в которой каждый процессорный элемент связан с соседними. По данной схеме строились системы: первая суперЭВМ — ILLIAC-IV, отечественные параллельные системы — ПС-2000, ПС-3000. Идея векторной обработки широко использовалась в таких известных суперЭВМ, как Суbеr205 и Gray-I, II, III. Узким местом подобных систем является необходимость изменения коммутации между процессорами, когда связь между ними отличается от матричной. Кроме того, класс задач, допускающих широкий матричный параллелизм, весьма узок. Структуры ВС этого типа, по существу, являются структурами специализированных суперЭВМ.

Элементы технологии SIMD реализованы в процессорах Intel начи-

ная с Pentium MMX (1997 г.).

257

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

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

Другие подходы к классификации ВС

Наличие большого разнообразия систем, образующих класс МКМД (MIMD), делает классификацию Флинна не полностью адекватной. Действительно и 4-процессорный SX-5 компании NEC и 1000-процессорный Cray ТЗЕ попадают в этот класс, и это заставляет искать другие подходы к классификации.

Классификация Джонсона. Е. Джонсон предложил проводить классификацию MIMD-архитектур на основе структуры памяти и реализации механизма взаимодействия и синхронизации между процессорами.

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

(табл. 9.2).

258

Основываясь на таком делении, Джонсон вводит следующие наименования для некоторых классов:

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

темами с разделяемой памятью, например CRAY Y-MP (по его классифика-

ции это класс1);

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

зываются архитектурами с передачей сообщений, например NCube (класс 3);

системы с распределенной памятью и синхронизацией через разделяемые переменные, как в BBN Butterfly, называются гибридными архитек-

турами (класс 2).

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

 

Таблица 9.2. Классификация Джонсона для систем MIMD по Флинну

 

 

 

Обмен

 

Память

дан-

общая

распределенная

ными

 

 

 

GMSV - General Memory-Shared

DMSV - Distributed Memory, Shared variables

Общие

variables (Общая память - разде-

(Распределенная память - разделяемые пере-

данные

ляемые переменные)

менные) Класс 2. «Гибридная архитектура»

 

Класс 1. «Системы с разделяе-

 

 

мой памятью»

 

Пере-

GMMP - General Memory,

DMMP - Distributed Memory, Message

Message propagation (Общая па-

propagation) (Распределенная памятьпередача

дача

мять-передача сообщений)

сообщений) Класс З. «Архитектуры с передачей

данных

 

сообщений»

 

 

 

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

Классификация Дункана. Р.Дункан определяет тот набор требований, на который может опираться искомая классификация.

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

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

наличие в архитектуре нескольких функциональных устройств, ра-

259

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

наличие отдельных процессоров ввода/вывода, работающих независимо и параллельно с основными процессорами.

Причины исключения перечисленных выше особенностей автор объясняет следующим образом. Если рассматривать компьютеры, использующие только параллелизм низкого уровня, наравне со всеми остальными, то, во-первых, практически все существующие системы будут классифицированы как «параллельные» (что заведомо не будет позитивным фактором для классификации), и, во-вторых, такие машины будут плохо вписываться в любую модель или концепцию, отражающую параллелизм высокого уровня. Дункан дает неформальное определение параллельной архитектуры, причем именно неформальность дала ему возможность включить в данный класс компьютеры, которые ранее не вписывались в систематику Флинна.

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

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

Классификация Скилликорна. Д. Скилликорн разработал подход, ориентированный как на описание свойств многопроцессорных систем, так и некоторых нетрадиционных архитектур, в частности dataflow и reduction-

машины.

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

процессор команд (IP — Instruction Processor) — функциональное устройство, работающее, как интерпретатор команд; в системе, вообще говоря, может отсутствовать;

процессор данных (DP — Data Processor) — функциональное уст-

ройство, работающее как преобразователь данных, в соответствии с арифметическими операциями;

иерархия памяти (IM — Instruction Memory, DM — Data Memory)

запоминающее устройство, в котором хранятся данные и команды, пересылаемые между процессорами;

 

 

DP

 

 

 

 

 

Операн-

Адреса операнды

 

 

 

 

 

Память

 

 

 

данных

 

Команды

Информация о состоянии

 

 

DP

 

 

 

Команды

Адреса

 

 

 

 

 

Память

 

 

данных

Рис. 9.5. Представление фон-неймановскойархитектуры поСкилликорну

260

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]