Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчёт_ввеление_в_ИТ_ПК_V2.docx
Скачиваний:
0
Добавлен:
13.05.2026
Размер:
2.05 Mб
Скачать

Раздел 3: однопроцессорные и многопроцессорные системы. Классификация многопроцессорных систем однопроцессорные системы

В архитектуре однопроцессорных вычислительных систем (ВС) принято различать следующие устройства[18]:

  • Устройства управления (УУ);

  • Центральный процессор (ЦП);

  • Память (ОЗУ и ПЗУ);

  • Устройства ввода-вывода (I/O от англ. «Input» – ввод; «Output» – вывод);

  • Каналы обмена информацией.

Принцип работы однопроцессорной ВС состоит в последовательном выполнении команд; главная задача при создании алгоритма – представление алгоритма в виде последовательности команд. Основная проблема оптимизации сводится к минимизации числа операций и размера требуемой памяти[18].

Многопроцессорные системы

Архитектура многопроцессорных вычислительных систем формально сходна с архитектурой однопроцессорных ВС[18]:

  • Устройство управление;

  • Первый центральный процессор, второй центральный процессор, …, n-ый центральный процессор.

  • Память (общая или разделённая);

  • Устройства ввода-вывода;

  • Каналы обмена информацией.

Узкое место такой системы – коммуникационная сеть (каналы обмена информацией). Сложность сети обычно растет пропорционально квадрату числа имеющихся устройств. В настоящее время трудно создать эффективную связь между любыми двумя устройствами многопроцессорной ВС. В многопроцессорных системах организация коммуникаций всегда ограничивает класс решаемых задач[18].

Классификация многопроцессорных систем классификация флинна

В 1966 году учёный информатик Майкл Флинн предложил классификацию вычислительных систем, основанную на количестве потоков входных данных и количестве потоков команд, которые эти данные обрабатывают[18]:

  • SISD (англ. «Single Instruction, Single Data» – Одиночный поток Команд, Одиночный поток Данных) – это обычные последовательные компьютеры. Программа принимает один поток данных и выполняет один поток инструкций по обработке этих данных. Иными словами, инструкции выполняются последовательно, и каждая инструкция оперирует минимальным количеством данных (например, сложение двух чисел) [18].

  • MISD (англ. «Multiple Instruction, Single Data» – Множественный поток Команд, Одиночный поток Данных). Разные потоки инструкций выполняются с одними и теми же данными. Обычно такие системы не приводят к ускорению вычислений, так как разные инструкции оперируют одними и теми же данными. В результате на выходе системы получается один поток данных. К таким системам относят различные системы дублирования и защиты от сбоев, когда, например, несколько процессоров дублируют вычисления друг друга для надёжности[18].

  • SIMD (англ. «Single Instruction, Multiple Data» – Одиночный поток инструкций, Множественный поток Данных). Один поток инструкций выполняет вычисления одновременно с разными данными. Например, выполняется сложение одновременно восьми пар чисел. Такие компьютеры называются векторными, так как подобные операции выполняются аналогично операциям с векторами (когда, например, сложение двух векторов означает одновременное сложение всех их компонентов) [18].

  • MIMD (англ. «Multiple Instruction, Multiple Data» – Множественный поток Инструкций, Множественный поток Данных). Разные потоки инструкций оперируют различными данными. Это системы наиболее общего вида, поэтому их проще всего использовать для решения различных параллельных задач[18].

В свою очередь, по классификации Джонсона, MIMD системы принято разделять на системы с общей памятью (несколько вычислителей имею доступ к общему объёму памяти) и системы с распределённой памятью (каждый вычислитель имеет доступ к своему объёму памяти, при этом вычислители могут обмениваться данными). Отдельно можно выделить системы с неоднородным доступом к памяти, в которых существует «быстрый» доступ к «своей» памяти вычислителя и «медленный» доступ к памяти других вычислителей[18].

Системы с общей памятью – это системы, в которых несколько процессоров (вычислительных блоков) имеют общую оперативную память. Самые распространённые представители данных систем – это компьютеры с многоядерными процессорами[18].

Системы с распределённой памятью – это системы, в которых каждый процессор (вычислительный блок) имеет свою оперативную память, а для обмена информацией используются специальные каналы связи между процессорами[18]. Системы с распределённой памятью, в которых каждый вычислительный узел блок представляет собой полноценный компьютер со своей копией операционной системы называют кластерами[18].

Гибридные системы – это системы, совмещающие элементы нескольких систем. Например, современные процессоры являются конвейерными процессорами, и имеют набор векторных инструкций, позволяющих выполнять одновременные вычисления с разными данными[18].

Соседние файлы в предмете Введение в информационные технологии