Класифікація Флінна
Одиночний
потік
інструкцій

Single Instruction
Множинний
потік
інструкцій

Multiple Instruction
Одиночний
потік
даних

Single Data
SISD MISD
Множинний
потік
даних

Multiple Data
SIMD MIMD

Таксономія (Класифікація) Флінна (англ. Flynn's taxonomy) — загальна класифікація архітектур ЕОМ за ознаками наявності паралелізму в потоках команд (інструкцій) і даних. Була запропонована 1966 року М. Флінном (M. Flynn)[1], означення розширене у публікації 1972 року[2]. Вся розмаїтість архітектур ЕОМ в цій таксономії Флінна зводиться до чотирьох класів:

  • SISD (single instruction — single data) — одиночний потік команд і даних. Паралелізм відсутній. До цієї категорії відносяться послідовні архітектури, у тому числі й фон-нойманівского типу.
  • SIMD (single instruction — multiple data) — одиночний потік команд і декілька потоків даних. Паралелізм в таких архітектурах полягає в можливості одночасного виконання однієї й тої ж операції над декількома елементами даних. Досягається це централізованою видачею команд декільком обчислювальним пристроям спільним для них пристроєм управління. Найпоширенішими представниками архітектур типу SIMD є так звані векторні ЕОМ, оптимізовані для паралельного виконання однотипних операцій над елементами векторів і матриць. Спеціалізовані векторні процесори іноді вбудовуються в комп'ютери загального призначення. Зокрема, в багатьох сучасних мікропроцесорах вбудовані обмежені можливості векторних обчислень для обробки мультимедіа.
  • MISD (multiple instruction — single data) — декілька потоків команд, одиночний потік даних. Фахівці дотепер не прийшли до єдиної думки щодо того, які архітектури відносити до даного класу. Деякі включають у нього конвеєрні обчислювачі, в яких цілісна операція розбивається на послідовність простіших етапів з суміщенням різних етапів для різних порцій даних у часі. Таким чином, в певному кожна порція даних від моменту завантаження з пам'яті до запису результату обробки проходить через декілька етапів обробки (стадій конвеєра). Подібні принципи покладені в основу систолічних архітектур, які також належать до цього класу.
  • MIMD (multiple instructions — multiple data) — декілька потоків команд і даних. Найпоширеніший на сьогодні клас паралельних архітектур, у яких кожний процесор здатний працювати незалежно від інших над своїм завданням.

Джерела ред.

  1. Flynn, Michael J. (December 1966). Very high-speed computing systems (PDF). Proceedings of the IEEE (англ.). 54 (12): 1901—1909. doi:10.1109/PROC.1966.5273. Архів оригіналу (PDF) за 16 вересня 2021. Процитовано 18 квітня 2022.
  2. Flynn, Michael J. (September 1972). Some Computer Organizations and Their Effectiveness (PDF). IEEE Transactions on Computers (англ.). C-21 (9): 948—960. doi:10.1109/TC.1972.5009071. S2CID 18573685.