Основные выводы
- Симметричная многопроцессорность включает в себя несколько процессоров, совместно использующих одну память и периферийные ресурсы, тогда как асимметричная многопроцессорность назначает отдельные задачи отдельным процессорам.
- При симметричной многопроцессорной обработке задачи равномерно распределяются между процессорами, что приводит к более эффективному использованию ресурсов, тогда как асимметричная многопроцессорная обработка может привести к недоиспользованию процессоров.
- Асимметричная многопроцессорная обработка обеспечивает лучшую изоляцию сбоев, поскольку сбой в одном процессоре напрямую не влияет на другой.

Что такое симметричная многопроцессорность?
Симметричная многопроцессорная обработка — это тип многопроцессорной обработки, при котором два или более процессоров, работающих вместе для выполнения задачи, подключаются через общую основную память. Симметричная многопроцессорная обработка предполагает использование нескольких ЦП для параллельного и более быстрого выполнения задачи. Различные процессоры, работающие в режиме симметричной многопроцессорной обработки, выполняют эти задачи независимо друг от друга, что позволяет выполнять их быстрее.
ЦП в симметричной многопроцессорной обработке подключается через общую основную память и имеет полный доступ к устройствам ввода и вывода. Ввод и вывод на этой многопроцессорной платформе следуют одному маршруту для входящего и исходящего трафика. Операционная система считала все процессоры равными при симметричной многопроцессорной обработке. Каждый процессор в этом типе многопроцессорной обработки обрабатывает отдельные программы и выполняет несколько наборов данных.
Симметричная обработка обеспечивает идеальную балансировку нагрузки и повышенную отказоустойчивость. Наряду с этим, это также снижает вероятность возникновения узкого места процессора. Все процессоры в симметричной многопроцессорной системе имеют собственную очередь готовых к выполнению программ. Они начинают работать из этих стандартных очередей всякий раз, когда получают сигнал.
Что такое асимметричная многопроцессорность?
Асимметричная многопроцессорная обработка — это один главный процессор, который обрабатывает тип многопроцессорной обработки, при котором два или более процессора работают вместе. Процессоры в асимметричной многопроцессорной обработке не идентичны и подчиняются отношениям «главный-подчиненный» с одним из главных процессоров. Все процессоры, работающие в условиях асимметричной многопроцессорности, связаны между собой, но не имеют самопланирования.
Главный процессор в асимметричной многопроцессорной системе управляет всеми задачами, такими как структура данных и планирование задач для других процессоров. Если главный процессор выходит из строя, любой из подчиненных процессоров принимает себя в качестве главного процессора и управляет выполнением процессора. С другой стороны, если какой-либо из подчиненных процессоров выходит из строя, другой подчиненный процессор берет на себя его задачи.
Любые процессоры, работающие в асимметричной многопроцессорной системе, не могут инициировать какой-либо процесс. Он может выполнять только задачи, назначенные ему главным процессором. Работа с симметричной многопроцессорной системой упрощается благодаря взаимосвязи ведущий-подчиненный. Входящий и исходящий сетевой трафик в асимметричных сетях проходит по нескольким маршрутам.
Разница между симметричной и асимметричной многопроцессорной обработкой
- Симметричные многопроцессорные системы сложны и требуют синхронизации для поддержания баланса нагрузки. С другой стороны, асимметричные многопроцессорные системы довольно просты, поскольку главный процессор имеет доступ ко всем данным и не требует синхронизации.
- Все ЦП в симметричной многопроцессорной обработке совместно используют одну и ту же память, в то время как в асимметричной многопроцессорной обработке один главный процессор управляет структурой данных.
- Процесс очереди готовности используется в симметричных многопроцессорных системах, в то время как асимметричная многопроцессорная обработка использует подход ведущий-ведомый.
- Все процессоры в симметричной многопроцессорной системе взаимодействуют друг с другом через общую память; с другой стороны, при асимметричной многопроцессорной обработке нет связи между процессорами, поскольку ими управляет главный процессор.
- В симметричной многопроцессорной обработке все процессоры имеют одинаковый приоритет, а в асимметричной многопроцессорной обработке все процессоры неравны.
Сравнение симметричной и асимметричной многопроцессорной обработки
Параметр сравнения | Симметричная многопроцессорность | Асимметричная многопроцессорность |
---|---|---|
задача ОС | Любой процессор выполняет задачи ОС. | Главный процессор выполняет только задачи ОС. |
Цена | Симметричные многопроцессорные системы дороже. | Асимметричные многопроцессорные системы дешевле. |
Проектирование | Симметричные многопроцессорные системы сложны в проектировании. | Асимметричные многопроцессорные системы легче проектировать. |
Цвета | Симметричная многопроцессорность подходит для однородных ядер. | Асимметричная многопроцессорность подходит для гетерогенных и гомогенных ядер. |
Подача заявки | Персональные компьютеры. | SoC модема для мобильных телефонов |