Разница между симметричной и асимметричной многопроцессорной обработкой
Содержание
- Сравнительная таблица
- Определение симметричной многопроцессорной обработки
- Определение асимметричной многопроцессорной обработки
- Вывод:
Существует два типа многопроцессорной обработки: симметричная многопроцессорная и асимметричная многопроцессорная. Многопроцессорная система имеет более одного процессора, и они могут выполнять несколько процессов одновременно. В Symmetric Multiprocessing процессоры совместно используют одну и ту же память. В Asymmetric Multiprocessing есть один главный процессор, который управляет структурой данных системы. Основное различие между симметричной и асимметричной многопроцессорностью заключается в том, что в Симметричная многопроцессорная обработка Все процессоры в системе запускают задачи в ОС. Но в Асимметричная многопроцессорная обработка только главный процессор запускает задачу в ОС.
Вы можете различить симметричный мультипроцессор и асимметричный мультипроцессор по некоторым другим пунктам, которые они обсуждают в сравнительной таблице, показанной ниже.
- Сравнительная таблица
- Определение
- Ключевые отличия
- Вывод
Сравнительная таблица
Основа для сравнения | Симметричная многопроцессорная обработка | Асимметричная многопроцессорная обработка |
---|---|---|
основной | Каждый процессор запускает задачи в операционной системе. | Только мастер процессор выполняет задачи операционной системы. |
Процесс | Процессор берет процессы из общей очереди готовности, или для каждого процессора может быть личная очередь готовности. | Главный процессор назначает процессы подчиненным процессорам, или у них есть некоторые предопределенные процессы. |
Архитектура | Все процессоры в Symmetric Multiprocessing имеют одинаковую архитектуру. | Все процессоры в асимметричной многопроцессорной обработке могут иметь одинаковую или разную архитектуру. |
связь | Все процессоры обмениваются данными с другим процессором посредством общей памяти. | Процессоры не должны обмениваться данными, поскольку они контролируются главным процессором. |
недостаточность | Если процессор выходит из строя, вычислительная мощность системы уменьшается. | Если ведущий процессор выходит из строя, ведомый превращается в ведущий процессор для продолжения выполнения. В случае сбоя подчиненного процессора его задача переключается на другие процессоры. |
Удобство | Симметричный мультипроцессор сложен, так как все процессоры должны быть синхронизированы для поддержания баланса нагрузки. | Асимметричный мультипроцессор прост как главный процессор доступа к структуре данных. |
Определение симметричной многопроцессорной обработки
Симметричная многопроцессорная обработка это тот, в котором все процессоры выполняют задачи в операционной системе. Она имеет нет хозяина-раба отношения, как асимметричная многопроцессорная. Все процессоры здесь, общаются с помощью Общая память.
Процессоры начинают выполнять процессы из общей очереди готовности. У каждого процессора также может быть своя собственная очередь готовых процессов для выполнения. Об этом должны позаботиться планировщик что нет двух процессоров, выполняющих один и тот же процесс.
Симметричная многопроцессорная обработка имеет балансировки нагрузки, лучше Отказоустойчивость а также снижает вероятность использования процессора узкое место, это сложный так как память распределяется между всеми процессорами. В симметричной многопроцессорной обработке сбой процессора приводит к уменьшенная вычислительная мощность.
Определение асимметричной многопроцессорной обработки
Асимметричная многопроцессорная обработка имеет ведущий-ведомый отношения между процессорами. Существует один главный процессор, который управляет оставшимся подчиненным процессором. Главный процессор назначает процессы подчиненному процессору, или у них может быть некоторая предопределенная задача для выполнения.
Главный процессор контролирует структура данных, планирование процессов, I / O обработка и другие действия системы контролируются мастер процессор.
В случае сбоя главного процессора один процессор из числа подчиненных процессоров становится главным процессором для продолжения выполнения. В случае сбоя подчиненного процессора другой подчиненный процессор берет на себя свою работу. Асимметричная многопроцессорная обработка просто поскольку существует только один процессор, который контролирует структуру данных и все действия в системе.
- Наиболее отличительной чертой между симметричной и асимметричной многопроцессорной обработкой является то, что задачи в ОС обрабатываются только главным процессором в асимметричной многопроцессорной обработке. С другой стороны, все процессоры в симметричной многопроцессорной обработке выполняют задачи в ОС.
- В симметричной многопроцессорной обработке каждый процессор может иметь собственную частную очередь готовых процессов или принимать процессы из общей очереди готовности. Но в асимметричной многопроцессорной обработке главный процессор назначает процессы подчиненным процессорам.
- Все процессоры в Symmetric Multiprocessing имеют одинаковую архитектуру. Но структура процессоров в асимметричном мультипроцессоре может отличаться.
- Процессоры в симметричной многопроцессорной обработке взаимодействуют друг с другом через общую память. Однако процессоры в асимметричной многопроцессорной обработке не должны обмениваться данными друг с другом, поскольку они управляются главным процессором.
- В случае сбоя главного процессора подчиненный процессор превращается в главный процессор для продолжения выполнения. Но в случае сбоя процессора в симметричной многопроцессорной обработке вычислительная мощность системы уменьшается.
- Асимметричный мультипроцессор прост, поскольку только главный процессор имеет доступ к структуре данных, тогда как симметричный мультипроцессор сложен, так как все процессоры должны работать синхронно.
Вывод:
Мультипроцессоры увеличивают скорость системы, поскольку можно одновременно выполнять несколько процессов. Асимметричная многопроцессорная обработка проста, только один процессор (мастер) может получить доступ к структуре данных. Симметричная многопроцессорная обработка сложна, поскольку структура данных распределяется между всеми процессорами, и все процессоры должны работать синхронно.