Расширение классификации Флинна
Рассматривая классы с множеством потоков команд (SIMD и MIMD), мы видели, что эти классы содержат разные по типу устройства (типы A и типы B). Устройства типа A сохраняли количество потоков данных (сколько на входе, столько же и на выходе), а устройства типа B увеличивали количество выходных потоков данных, таким образом, к базовой таблице Флинна напрашивается еще одно измерение, связанное с изменением количества потоков данных.
Естественным образом возникает вопрос: существует ли класс устройств, у которых количество выходных потоков информации меньше, чем количество входных потоков информации? – Конечно, существует! Например, устройства, осуществляющие:
· разнообразные свёртки векторов, скажем скалярное произведение векторов;
· свёртки тензоров, при этом тензор может превратиться в вектор или скаляр;
· свёртки списков, переводящие структуры данных к единственному атомарному значению при помощи заданной функции;
· секционная свёртка, к ней может относиться подсчет контрольных сумм или CRC-кода (типа CRC32).
Таким образом, добавляя к таблице Флинна еще одно измерение, связанное с изменением количества потоков данных, можно отметить на нем три градации:
· Nin<Nout – увеличение числа потоков данных,
· Nin=Nout – сохранение числа потоков данных,
· Nin>Nout – уменьшение числа потоков данных,
где Nin – количество входных потоков данных, а Nout– количество выходных потоков данных.
|
|
Таким образом, классическая классификация Флинна является одним из трех слоев более общей, трехмерной таблицы. В этом слое Nin=Nout, а два дополнительных слоя даны на рис.2.1. Для указания индекса по новой оси будем добавлять расширение “L” – уменьшение числа потоков данных, “H” – увеличение числа потоков данных, расширение “E” – сохранение числа потоков данных, соответствует классическому слою.
Одиночный поток команд | Множество потоков команд | Одиночный поток команд | Множество потоков команд | ||
Одиночный поток данных | SISD-L | MISD-L | SISD-H | MISD-H | |
Множество потоков данных | SIMD-L | MIMD-L | SIMD-H | MIMD-H | |
Nin>Nout – уменьшение числа потоков данных | Nin<Nout – увеличение числа потоков данных |
Рис.2.1. Дополнительные слои классификации Флинна
Можно отобразить получившуюся трехмерную таблицу и по слоям потоков команд (рис.2.2): первый слой – одиночный поток команд, а второй слой – множество потоков команд.
Одиночный поток данных | Множество потоков данных | ||||
Nin>Nout – уменьшение числа потоков данных | SISD-L | SIMD-L | Одиночный поток команд | ||
Nin=Nout – сохранение числа потоков данных | SISD-E Классический SISD | SIMD-E Классический SIMD | |||
Nin<Nout – увеличение числа потоков данных | SISD-H | SIMD-H | |||
Nin>Nout – уменьшение числа потоков данных | MISD-L | MIMD-L | Множество потоков команд
| ||
Nin=Nout – сохранение числа потоков данных | MISD-E | MIMD-E Классический MIMD | |||
Nin<Nout – увеличение числа потоков данных | MISD-H | MIMD-H |
Рис.2.2. Расширенная классификация Флинна
В этих таблицах зеленым отмечены классические классы Флинна, при этом пустой у Флинна класс MISD-E отмечен бирюзовым.
Классы SISD-L и MISD-L
По определению, эти классы имеют только один входной поток информации, а на выходе должны иметь меньше одного потока, т.е. – ноль. На первый взгляд количество выходных потоков информации не может нулевым – устройство должно что-то давать на выходе, следовательно, в этом классе не может быть ни одного устройства.
Однако, более глубокий анализ показывает, что существуют устройства, в которые входит один или несколько потоков информации, и не выходит ни одного потока информации, но есть некий терминальный результат, вот несколько вариантов:
· Устройство типа «закрытая копилка». Результат будет известен только в конце, когда «копилка» будет «разбита».
· Объекты квантовой физики, где попытка измерить накопленное состояние приводит к изменению (или разрушению) этого состояния.
|
|
· Объекты типа «радиоуправляемая бомба», которые ожидают во входных информационных потоках заданную кодовую последовательность, если есть результат работы такого объекта, то он однократен.
Таким образом, даже в этом классе вычислительных устройств есть реальные объекты, схемы которых даны на рис.2.3.А – класс SISD-L, а рис.2.3.В – класс MISD-L. На этих рисунках «ТПЭ» - это терминальный процессорный элемент.
A) | B) |
Рис. 2.3. Схемы построения терминальных классов: A) SISD-L, B) MISD-L .
Как уже отмечалось, конвейерная последовательность процессорных элементов топологически эквивалентна одному элементу, таким образом, класс MISD-L, по сути, эквивалентен классу SISD-L.
Класс SIMD-L
Рис.2.4. Класс SIMD-L |
К этому классу относятся упоминавшиеся ранее устройства, выполняющие разнообразные свертки данных. Причем, в зависимости от конкретного типа операций это может быть либо один поток данных (что бывает чаще всего), либо несколько потоков данных, но в последнем случае количество выходных потоков меньше количества входных потоков.
Класс SISD-H
Рис.2.5. Класс SISD-H |
К этому классу относятся устройства расщепляющие данные входного потока. Операций расщепления данных достаточно много, но большинство из них создает только пару выходных потоков данных, например:
|
|
· Расщепление FP-чисел на мантиссу и порядок;
· Вычисление значений функций имеющих точки бесконечного разрыва, в виде двух чисел – числителя и знаменателя (например, tg(x) или ctg(x));
· Вычисление функций имеющих пару результатов по определению (например, целочисленное деление дает частное и остаток).
Поскольку задач расщепления данных не так уж и много, то таких, расщепляющих систем тоже не много.
Класс SIMD-H
Рис.2.6. Варианты класса SIMD-H |
Устройства этого класса состоят из параллельно работающих устройств класса SISD-H, которые расщепляют входные потоки данных.
Но чаще встречается вариант, где наряду с SISD-H, есть не расщепляющие устройства класса SISD, выполняющие обычные скалярные операции. Такая архитектура более гибкая и позволяет параллельно выполнять операции разных типов.
Класс MISD-E
Устройства этого класса рассматривались ранее, как схема (A) класса MISD.
Класс MISD-H
Устройства этого класса рассматривались ранее, как схема (B) класса MISD.
Дата добавления: 2018-04-04; просмотров: 1493; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!