Новосибирский государственный университет

Факультет информационных технологий

ICT SBRAS
А.М.Федотов

Словарь терминов в коллекции "Вычислительные системы"

Классификация Хендлера

Классификация Хендлера базируется на количественном описании параллелизма на трех различных уровнях обработки данных: выполнение программы, выполнение команд, обработка битов.

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

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

Таким образом, подобная схема выделения уровней предполагает, что вычислительная система включает какое-то число процессоров каждый со своим устройством управления. Каждое устройство управления связано с несколькими АЛУ, исполняющими одну и ту же операцию в каждый конкретный момент времени. Наконец, каждое АЛУ объединяет несколько элементарных логических схем, ассоциированных с обработкой одного двоичного разряда (число ЭЛС есть ничто иное, как длина машинного слова). Если на какое-то время не рассматривать возможность конвейеризации, то число УУ k, число АЛУ d в каждом УУ и число ЭЛС w в каждом АЛУ составят тройку для описания данной ВС C: t (C) = (k, d, w).

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

Теперь можно расширить возможности описания, допустив возможность конвейерной обработки на каждом из уровней. В самом деле, конвейерность на самом нижнем уровне (т.е. на уровне ЭЛС) это конвейерность функциональных устройств. Если функциональное устройство обрабатывает w-разрядные слова на каждой из w' ступеней конвейера, то для характеристики параллелизма данного уровня естественно рассмотреть произведение w×w'. Знак умножения «×» используется на каждом уровне чтобы отделить число, представляющее степень параллелизма, от числа ступеней в конвейере. Компьютер TI ASC имеет четыре конвейерных устройства по восемь ступеней в каждом для обработки 64-х разрядных слов, следовательно, он может быть описан так: t (TI ASC) = (1,4,64×8).

Следующий уровень конвейерной обработки - это конвейеризация на уровне команд. Предполагается, что в ВС есть несколько функциональных устройств, которые могут работать одновременно в рамках одного потока команд (в настоящее время используется специальный термин для обозначения данной возможности - сцепление функциональных устройств). Классическим примером этому могут служить компьютеры фирмы Cray Research. А исторически первой, по всей вероятности, является машина CDC 6600, содержащая десять независимых последовательных функциональных устройств, способных подавать результат своей работы на вход другим функциональным устройствам, образуя единый поток команд: t (CDC 6600) = (1,1×10,~64) (описан только центральный процессор без учета управляющих и периферийных подсистем).

При конвейеризации на самом верхнем уровне, известной как макро-конвейер, поток данных, проходя через один процессор, поступает на вход другому, возможно через некоторую буферную память. Если независимо работают n процессоров, то в идеальной ситуации при отсутствии конфликтов и полной сбалансированности получается ускорение в n раз по сравнению с использованием только одного процессора. Так компьютер PEPE, имея фактически три независимых системы из 288-ми устройств, описывается следующим образом: t (PEPE) = (1×3,288,32).

После расширения трехуровневой модели параллелизма средствами описания потенциальных возможностей конвейеризации каждая тройка t (PEPE) = (k×k',d×d',w×w') интерпретируется так:Очевидна связь между классификацией Фенга и классификацией Хендлера: для получения максимальной степени параллелизма в терминах Фенга надо найти произведение всех шести величин в описании Хендлера. Здесь же, заложив в основу своей схемы явное указание на присутствующий параллелизм и возможную конвейеризацию, Хендлер сразу снимает массу вопросов, характерных для предшествующих схем Флинна, Шора и Фенга, по крайней мере, в плане описания векторно-конвейерных машин.

В дополнение к изложенному способу описания архитектур Хендлер предлагает использовать три операции, которые будучи примененными к тройкам, позволят описать:Первая операция (×) в каком-то смысле отражает конвейерный принцип обработки и предполагает последовательное прохождение данных сначала через первый ее аргумент-подсистему, а затем через второй. Описание упомянутого выше компьютера CDC 6600 можно уточнить следующим образом: t (CDC 6600) = (10,1,12)×(1,1×10,64), где первый аргумент отражает существование десяти 12-ти разрядных периферийных процессоров и тот факт, что любая программа должна сначала быть обработана одним из них и лишь после этого передана центральному процессору для исполнения. Аналогично можно получить описание машины PEPE, принимая во внимание, что в качестве хост-компьютера она использует CDC 7600: t (PEPE) = t (CDC 7600)×(1×3,288,32) = (15,1,12)×(1,1×9,60)×(1×3,288,32).
Поток данных последовательно проходит через три подсистемы, что отражено знаком «×».
Все подсистемы последнего примера достаточно сложны и, вообще говоря, исходя только из данного описания могут представляться по-разному. Чтобы внести большую ясность, аналогично операции конвейерного исполнения, Хендлер вводит операцию параллельного исполнения (+), фиксирующую возможность независимого использования процессоров разными задачами: t (n,d,w) = [{(1,d,w)+...+(1,d,w)] {n раз}.
В случае CDC 7600 уточненная запись вида: (15,1,12)×(1,1×9,60) = [(1,1,12)+...+(1,1,12)]} {15 раз} × (1,1×9,60) говорит о том, что каждая задача может захватить свой периферийный процессор, а затем одна за одной они будут поступать в центральный процессор.
И наконец третья операция - операция альтернативы (V), показывает возможные альтернативные режимы функционирования ВС. Чем больше для системы таких режимов, тем более гибкой архитектурой, по мнению Хендлера, она обладает. Например, компьютер C.mmp может быть запрограммирован для использования в трех принципиально разных режимах: t (C.mmp) = (16,1,16)V(1×16, 1,1 6) V(1,16,16).


См. дополнительно: Классификация Хендлера

Литература

Дополнительная:

  1. Воеводин Вл.В. Методы описания и классификации архитектур вычислительных систем / Вл.В. Воеводин, А.П. Капитонова. - М.:Издательство МГУ, 1994. - 79 с. - ISBN 5-211-03355-8.

Ключевые термины (головные):  Архитектура вычислительной машины;   Процессор;   Уровни параллелизма;   Классификация Фенга;   Классификация Флинна;   Классификация Шора;


Контекстный поиск: Задайте образец для поиска:

|Головная| |Преподавание| | Современные проблемы информатики| |Информатика| |Ключевые термины| |Персоны|

Федотов Анатолий Михайлович
[SBRAS]
НГУ
ФИТ НГУ
ИВТ СО РАН
© 1998-2024, Новосибирский государственный университет, Новосибирск
© 1998-2024, Институт вычислительных технологий СО РАН, Новосибирск
© 1998-2024, Федотов А.М.
    Дата последней модификации: 14.08.2013