Мулти-машинни, многопроцесорни асоциации

Започвайки тази тема, ние, следвайки традиционния научен подход, първо ще разгледаме класификацията - това ще ни позволи да идентифицираме групи с идентични свойства сред голямо разнообразие от машинни асоциации, което ще ни помогне да се запознаем с най-общите подходи, абстрахирайки се от подробности за изпълнението.

За класификация има много методи за разделяне според различни характеристики (например изпълнение). Една от най-простите класически класификации е Класификация по Флин (M. Flynn), въз основа на оценка на някои характеристики на информационните потоци в една машина.

В контекста на машина могат да се разграничат два потока информация: контролен поток (за прехвърляне на контролни действия към конкретно устройство) и поток от данни (циркулиращи между RAM и външни устройства). Възможни са някои оптимизации на поточните данни. В командния поток това е преход от команди от ниско към високо ниво (когато процесорът, вместо да работи с микроинструкции, започва да генерира команди от високо ниво, които се предават на „интелигентно“ устройство за управление, което директно изпълнява тези команди); в потока от данни - това е изключването на участието на процесора в обмена между външни устройства и RAM.

Класификацията на Flynn включва следните четири архитектури:

- OKOD (единичен поток от команди, единичен поток от данни или SISD - единична инструкция, единичен поток от данни) е традиционна унипроцесорна система (близка до машината на фон Нойман).

- OKMD (единичен поток от команди, множество потоци от данни или SIMD - единична инструкция, множество потоци данни) - например векторни компютри, способни да работят върху вектори на данни. Обикновено за тези цели тези машини имат векторни регистри и обикновено имат векторни операции, които включват векторна обработка.

асоциации

Фигура: 53. Класификация на ICMD.

Нека започнем с UMA за системи със споделена RAM. UMA (унифициран достъп до паметта) - система с еднакъв достъп до паметта. В този модел произволен процесорен елемент има достъп до произволна точка на RAM (достъп със същото време). Разработването на архитектурата на UMA беше моделът SMP (симетричен мултипроцесор е симетрична мултипроцесорна система). В този модел (фиг. 54) няколко процесора и блок обща RAM са свързани към обща системна шина или гръбначен стълб. Това решение има следните недостатъци. Първо, това е централизирана система, а шината в нея е „тесно място“, така че този модел налага значителни ограничения върху броя на свързаните процесори (обикновено 2, 4, 8, до 32). Второ, има допълнителни проблеми с кеша от първо ниво на всеки процесор. Тук има поне две решения: или не използвайте кеш паметта, или внедрете кеш памет с проследяване. В последния случай всеки кеш прослушва шината и реагира на ситуацията в системата. Различните ситуации са показани в следната таблица: