алельні обчислення. Оскільки НД з'явилися як паралельні системи, то розглянемо класифікацію архітектур c цієї точки зору. Така класифікація архітектур була запропонована М. Флінном на початку 60-х років. В її основу закладено два можливі види паралелізму: незалежність потоків завдань (команд), які існують у системі, і незалежність (незв'язаність) даних, що обробляються в кожному потоці. Відповідно до цієї класифікації існує чотири основних архітектури НД:
. одиночний потік команд - одиночний потік даних (ОКОД), в англійській абревіатурі Single Instruction Single Data, SISD - одиночний потік інструкцій - одиночний потік даних;
. одиночний потік команд - множинний потік даних (ОКМД), або Single Instruction Multiple Data, SIMD - одиночний потік інструкцій - одиночний потік даних;
. множинний потік команд - одиночний потік даних (МКОД), або Multiple Instruction Single Data, MISD - множинний потік інструкцій - множинний потік даних;
. множинний потік команд - множинний потік даних (МКМД), або Multiple Instruction Multiple Data, MIMD-множинний потік інструкцій - множинний потік даних.
Архітектура ОКОД охоплює всі однопроцесорні і одномашінние варіанти систем, тобто системи з одним обчислювачем. Всі ЕОМ класичної структури потрапляють в цей клас. Тут паралелізм обчислень забезпечується шляхом суміщення виконання операцій окремими блоками АЛУ, а також паралельною роботою пристроїв введення-виведення інформації і процесора. Закономірності організації обчислювального процесу в цих структурах досить добре вивчені. p align="justify"> Архітектура ОКМД передбачає створення структур векторної або матричної обробки. Системи цього типу зазвичай будуються як однорідні: процесорні елементи, що входять в систему, ідентичні, і всі вони управляються однією і тією ж послідовністю команд. Проте кожен процесор обробляє свій потік даних. Під цю схему добре підходять завдання обробки матриць або векторів (масивів), завдання розв'язання систем лінійних і нелінійних, алгебраїчних і диференціальних рівнянь, задачі теорії поля та ін У структурах даної архітектури бажано забезпечувати з'єднання між процесорами, відповідні реалізованим математичним залежностям. Як правило, ці зв'язки нагадують матрицю, в якій кожен процесорний елемент пов'язаний з сусідніми. Векторний або матричний тип обчислень є необхідним атрибутом будь суперЕОМ. p align="justify"> 3. Типи обчислювальних систем
.1 Типові структури обчислювальних систем
Класифікація рівнів програмного паралелізму включає в себе шість позицій:
незалежні завдання,
окремі частини завдань, програми та підпрограми,
цикли і ітерації,
оператори і команди,
фази окремих коман...