Эволюция архитектуры вычислительных систем и сетей

Эволюция архитектуры вычислительных систем и сетей.

Общие вопросы с обязательной привязкой  к конкретным 
примерам с ответами на вопросы «зачем?» , «как?», «почему?».

 

Понятие «вычислительная  система» предполагает наличие множества процессоров или законченных вычислительных машин, при объединении которых используется один из двух подходов.

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

 

История развития вычислительных систем:

 

Системы пакетной обработки

Первый период  (1945-1955).  Ламповые машины. ( Операционные системы отсутствовали.)

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

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

.

 

Серийное производство ЭВМ в  СССР началось с 1953 года. В этом году был изготовлен первый экземпляр  машины Стрела, разработанной по проекту  и под руководством Героя Социалистического  Труда Ю.Я. Базилевского.

 Баллистические расчеты всех  первых космических запусков, в  том числе полета Юрия Гагарина, проводили в первом вычислительном  центре страны на ЭВМ "Стрела".

 

Второй период  (1955-Начало 60-х). Компьютеры на основе транзисторов.  Пакетные операционные системы

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

 

 

Многотерминальные системы

Третий период (Начало 60-х - 1980).  Компьютеры на основе интегральных микросхем. Первые многозадачные ОС.

 

В это время в технической  базе вычислительных машин произошел  переход от отдельных полупроводниковых элементов типа транзисторов к интегральным микросхемам, что открыло путь к появлению следующего поколения компьютеров, представителем которого является, например, IBM/360.

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

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

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

\\Появление мультипрограммирования требует целой революции в строении вычислительной системы. 

Дальнейшим развитием стало  появление многотерминальных систем.

 

Многотерминальные системы  — прообраз сети

 

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

 

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

 

Рис. 1.2 Многотерминальная система  — прообраз вычислительной сети

 

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

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

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

 

Появление глобальных сетей

 

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

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

 

 

В 1969 году министерство обороны США  инициировало работы по объединению  в общую сеть суперкомпьютеров оборонных  и научно-исследовательских центров. Эта сеть, получившая название ARPANET послужила отправной точкой для  создания первой и самой известной  ныне глобальной сети — Internet. Сеть ARPANET объединяла компьютеры разных типов, работавшие под управлением различных ОС с дополнительными модулями, реализующими коммуникационные протоколы, общие для всех компьютеров сети.

В 1974 году компания IBM объявила о создании собственной сетевой архитектуры  для своих мэйнфреймов, получившей название SNA (System Network Architecture, системная сетевая архитектура). В это же время в Европе активно велись работы по созданию и стандартизации сетей X.25.

 

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

 

Глобальные компьютерные сети очень многое унаследовали от других, гораздо более старых и глобальных сетей — телефонных.

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

 

 

Развитие технологии глобальных компьютерных сетей во многом определялось прогрессом телефонных сетей. С конца 60-х годов в телефонных сетях все чаще стала применяться передача голоса в цифровой форме, что привело к появлению высокоскоростных цифровых каналов, соединяющих АТС и позволяющих одновременно передавать десятки и сотни разговоров. Была разработана специальная технология плезиохронной цифровой иерархии (Plesiochronous Digital Hierarchy, PDH), предназначенная для создания так называемых первичных, или опорных, сетей. Такие сети не предоставляют услуг конечным пользователям, они являются фундаментом, на котором строятся скоростные цифровые каналы "точка-точка", соединяющие оборудование другой (так называемой наложенной) сети, которая уже работает на конечного пользователя.

Первоначально технология PDH, поддерживающая скорости до 140 Мбит/с, была внутренней технологией телефонных компаний. Однако со временем эти компании стали сдавать часть своих каналов PDH в аренду предприятиям, которые использовали их для создания собственных телефонных и глобальных компьютерных сетей.

 

 

Появившаяся в конце 80-х годов  технология синхронной цифровой иерархии (Synchronous Digital Hierarchy, SDH) расширила диапазон скоростей цифровых каналов до 10 Гбит/c, а технология спектрального мультиплексирования DWDM (Dense Wave Division Multiplexing) — до сотен гигабит и даже нескольких терабит в секунду.

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

 

Первые локальные  сети

 

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

 

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

 

Но шло время, потребности пользователей  вычислительной техники росли, им стало  недостаточно собственных компьютеров, им уже хотелось получить возможность  обмена данными с другими близко расположенными компьютерами. В ответ  на эту потребность предприятия  и организации стали соединять  свои мини-компьютеры вместе и разрабатывать  программное обеспечение, необходимое  для их взаимодействия. В результате появились первые локальные вычислительные сети (рис. 1.4). Они еще во многом отличались от современных, в первую очередь - своими устройствами сопряжения. На первых порах для соединения компьютеров друг с другом использовались самые разнообразные нестандартные устройства со своим способом представления данных на линиях связи, своими типами кабелей и т. п. Эти устройства могли соединять только те типы компьютеров, для которых были разработаны, - например, мини-компьютеры PDP-11 с мэйнфреймом IBM 360 или компьютеры «Наири» с компьютерами «Днепр». Такая ситуация создала большой простор для творчества студентов - названия многих курсовых и дипломных проектов начинались тогда со слов «Устройство сопряжения...».

 

 

Создание стандартных  технологий локальных сетей

 

В середине 80-х годов положение  дел в локальных сетях стало  кардинально меняться. Утвердились  стандартные технологии объединения  компьютеров в сеть - Ethernet, Arcnet, Token Ring. Мощным стимулом для их развития послужили персональные компьютеры. Эти массовые продукты явились идеальными элементами для построения сетей - с одной стороны, они были достаточно мощными для работы сетевого программного обеспечения, а с другой - явно нуждались в объединении своей вычислительной мощности для решения сложных задач, а также разделения дорогих периферийных устройств и дисковых массивов. Поэтому персональные компьютеры стали преобладать в локальных сетях, причем не только в качестве клиентских компьютеров, но и в качестве центров хранения и обработки данных, то есть сетевых серверов, потеснив с этих привычных ролей мини-компьютеры и мэйнфреймы.

 

 

 

 

Современные тенденции

 

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

 

Изменяются и локальные сети. Вместо соединяющего компьютеры пассивного кабеля в них в большом количестве появилось разнообразное коммуникационное оборудование - коммутаторы, маршрутизаторы, шлюзы. Благодаря такому оборудованию появилась возможность построения больших корпоративных сетей, насчитывающих  тысячи компьютеров и имеющих  сложную структуру. Возродился интерес  к крупным компьютерам - в основном из-за того, что после спада эйфории  по поводу легкости работы с персональными  компьютерами выяснилось, что системы, состоящие из сотен серверов, обслуживать  сложнее, чем несколько больших  компьютеров. Поэтому на новом витке  эволюционной спирали мэйнфреймы стали возвращаться в корпоративные вычислительные системы, но уже как полноправные сетевые узлы, поддерживающие Ethernet или Token Ring, а также стек протоколов TCP/IP, ставший благодаря Internet сетевым стандартом де-факто.

 

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

 

Сегодня эти проблемы решаются различными способами, в том числе и с  помощью специально рассчитанной на передачу различных типов трафика  технологии АТМ, Однако, несмотря на значительные усилия, предпринимаемые в этом направлении, до приемлемого решения проблемы пока далеко, и в этой области предстоит еще много сделать, чтобы достичь заветной цели - слияния технологий не только локальных и глобальных сетей, но и технологий любых информационных сетей - вычислительных, телефонных, телевизионных и т. п. Хотя сегодня эта идея многим кажется утопией, серьезные специалисты считают, что предпосылки для такого синтеза уже существуют, и их мнения расходятся только в оценке примерных сроков такого объединения - называются сроки от 10 до 25 лет. Причем считается, что основой для объединения послужит технология коммутации пакетов, применяемая сегодня в вычислительных сетях, а не технология коммутации каналов, используемая в телефонии.

 

Современность

Также в наше время помимо вычислительных сетей ктивно используются такие выч сист как Суперкомпью́тер (англ. supercomputer, СуперЭВМ) — вычислительная машина, значительно превосходящая по своим техническим параметрам большинство существующих компьютеров. Как правило, современные суперкомпьютеры представляют собой большое число высокопроизводительных серверных компьютеров, соединённых друг с другом локальной высокоскоростной магистралью для достижения максимальной производительности в рамках подхода распараллеливания вычислительной задачи

Вычислительная система «Ломоносов» (фото разработчиков).

Суперкомпьютер «Ломоносов» —  суперкомпьютер, построенный компанией  «Т-Платформы» для МГУ им. М.В. Ломоносова. По состоянию на ноябрь 2011 года занимает 18-е место в рейтинге TOP500 самых  мощных суперкомпьютеров[1]. По состоянию  на 30 июня 2012 — 22 место[2]. По состоянию  на 13 ноября 2012 — 26 место

 

__________

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

http://www.rentagrid.org/


 

 

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

 

 

 

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

Эта классификация архитектур была предложена Флинном (M. Flynn) в начале 60-х гг. В ее основу заложено два возможных вида параллелизма: независимость потоков заданий (команд), существующих в системе, и независимость (несвязанность) данных, обрабатываемых в каждом потоке. Классификация до настоящего времени еще не потеряла своего значения. Однако подчеркнем, что, как и любая классификация, она носит временный и условный характер. Своим долголетием она обязана тому, что оказалась справедливой для ВС, в которых ЭВМ и процессоры реализуют программные последовательные методы вычислений. С появлением систем, ориентированных на потоки данных и использующих ассоциативную обработку, классификация может быть некорректной.

Согласно данной классификации  существуют четыре основные архитектуры  ВС, представленные на рис. 10.3:

 

1) одиночный поток команд - одиночный  поток данных (ОКОД), в английской  аббревиатуре Single Instruction Single Data (SISD), - одиночный поток инструкций - одиночный поток данных;

2) одиночный поток команд - множественный  поток данных (ОКМД), или Single Instruction Multiple Data (SIMD), - одиночный поток инструкций -множественный поток данных;

3)множественный поток команд - одиночный  поток данных (МКОД), или Multiple Instruction Single Data (MISD), - множественный поток инструкций - одиночный поток данных;

4)множественный поток команд - множественный  поток данных (МКМД), или Multiple histruction Multiple Data (MIMD), - множественный поток инструкций - множественный поток данных.

 

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

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

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

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

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

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

 

SISD (single instruction stream / single data stream) - одиночный поток команд и одиночный поток данных. К этому классу относятся, прежде всего, классические последовательные машины, или иначе, машины фон-неймановского типа, например, PDP-11 или VAX 11/780. В таких машинах есть только один поток команд, все команды обрабатываются последовательно друг за другом и каждая команда инициирует одну операцию с одним потоком данных. Не имеет значения тот факт, что для увеличения скорости обработки команд и скорости выполнения арифметических операций может применяться конвейерная обработка - как машина CDC 6600 со скалярными функциональными устройствами, так и CDC 7600 с конвейерными попадают в этот класс.

SIMD (single instruction stream / multiple data stream) - одиночный поток команд и множественный поток данных. В архитектурах подобного рода сохраняется один поток команд, включающий, в отличие от предыдущего класса, векторные команды. Это позволяет выполнять одну арифметическую операцию сразу над многими данными - элементами вектора. Способ выполнения векторных операций не оговаривается, поэтому обработка элементов вектора может производится либо процессорной матрицей, как в ILLIAC IV, либо с помощью конвейера, как, например, в машине CRAY-1.

MISD (multiple instruction stream / single data stream) - множественный поток команд и одиночный поток данных. Определение подразумевает наличие в архитектуре многих процессоров, обрабатывающих один и тот же поток данных. Однако ни Флинн, ни другие специалисты в области архитектуры компьютеров до сих пор не смогли представить убедительный пример реально существующей вычислительной системы, построенной на данном принципе. Ряд исследователей относят конвейерные машины к данному классу, однако это не нашло окончательного признания в научном сообществе. Будем считать, что пока данный класс пуст.

MIMD (multiple instruction stream / multiple data stream) - множественный поток команд и множественный поток данных. Этот класс предполагает, что в вычислительной системе есть несколько устройств обработки команд, объединенных в единый комплекс и работающих каждое со своим потоком команд и данных.


Эволюция архитектуры вычислительных систем и сетей