Основные выводы
- Симметричная многопроцессорность включает в себя несколько процессоров, совместно использующих одну память и периферийные ресурсы, тогда как асимметричная многопроцессорность назначает отдельные задачи отдельным процессорам.
- При симметричной многопроцессорной обработке задачи равномерно распределяются между процессорами, что приводит к более эффективному использованию ресурсов, тогда как асимметричная многопроцессорная обработка может привести к недоиспользованию процессоров.
- Асимметричная многопроцессорная обработка обеспечивает лучшую изоляцию сбоев, поскольку сбой в одном процессоре напрямую не влияет на другой.
Что такое симметричная многопроцессорность?
Симметричная многопроцессорная обработка — это тип многопроцессорной обработки, при котором два или более процессоров, работающих вместе для выполнения задачи, подключаются через общую основную память. Симметричная многопроцессорная обработка предполагает использование нескольких ЦП для параллельного и более быстрого выполнения задачи. Различные процессоры, работающие в режиме симметричной многопроцессорной обработки, выполняют эти задачи независимо друг от друга, что позволяет выполнять их быстрее.
ЦП в симметричной многопроцессорной обработке подключается через общую основную память и имеет полный доступ к устройствам ввода и вывода. Ввод и вывод на этой многопроцессорной платформе следуют одному маршруту для входящего и исходящего трафика. Операционная система считала все процессоры равными при симметричной многопроцессорной обработке. Каждый процессор в этом типе многопроцессорной обработки обрабатывает отдельные программы и выполняет несколько наборов данных.
Симметричная обработка обеспечивает идеальную балансировку нагрузки и повышенную отказоустойчивость. Вместе с тем снижается и вероятность ЦП горлышко бутылки. Все процессоры в симметричной многопроцессорной системе имеют собственную очередь готовых к выполнению программ. Они начинают работать из этих стандартных очередей всякий раз, когда получают сигнал.
Что такое асимметричная многопроцессорность?
Асимметричная многопроцессорность — это один мастер процессор который обрабатывает тип многопроцессорной обработки, при которой два или более процессора работают вместе. ЦП при асимметричной многопроцессорной обработке не идентичны и следуют отношениям ведущий-ведомый с одним из главных процессоров. Все процессоры, работающие в режиме асимметричной многопроцессорности, взаимосвязаны, но не имеют самопланирования.
Главный процессор в асимметричной многопроцессорной системе управляет всеми задачами, такими как структура данных и планирование задач для других процессоров. Если главный процессор выходит из строя, любой из подчиненных процессоров принимает себя в качестве главного процессора и управляет выполнением процессора. С другой стороны, если какой-либо из подчиненных процессоров выходит из строя, другой подчиненный процессор берет на себя его задачи.
Любые процессоры, работающие в асимметричной многопроцессорной системе, не могут инициировать какой-либо процесс. Он может выполнять только задачи, назначенные ему главным процессором. Работа с симметричной многопроцессорной системой упрощается благодаря взаимосвязи ведущий-подчиненный. Входящий и исходящий сетевой трафик в асимметричных сетях проходит по нескольким маршрутам.
Разница между симметричной и асимметричной многопроцессорной обработкой
- Симметричные многопроцессорные системы сложны и требуют синхронизации для поддержания баланса нагрузки. С другой стороны, асимметричные многопроцессорные системы довольно просты, поскольку главный процессор имеет доступ ко всем данным и не требует синхронизации.
- Все ЦП в симметричной многопроцессорной обработке совместно используют одну и ту же память, в то время как в асимметричной многопроцессорной обработке один главный процессор управляет структурой данных.
- Процесс очереди готовности используется в симметричных многопроцессорных системах, в то время как асимметричная многопроцессорная обработка использует подход ведущий-ведомый.
- Все процессоры в симметричной многопроцессорной системе взаимодействуют друг с другом через общую память; с другой стороны, при асимметричной многопроцессорной обработке нет связи между процессорами, поскольку ими управляет главный процессор.
- В симметричной многопроцессорной обработке все процессоры имеют одинаковый приоритет, а в асимметричной многопроцессорной обработке все процессоры неравны.
Сравнение симметричной и асимметричной многопроцессорной обработки
Параметр сравнения | Симметричная многопроцессорность | Асимметричная многопроцессорность |
---|---|---|
задача ОС | Любой процессор выполняет задачи ОС. | Главный процессор выполняет только задачи ОС. |
Цена | Симметричные многопроцессорные системы дороже. | Асимметричные многопроцессорные системы дешевле. |
Проектирование | Симметричные многопроцессорные системы сложны в проектировании. | Асимметричные многопроцессорные системы легче проектировать. |
Цвета | Симметричная многопроцессорность подходит для однородных ядер. | Асимметричная многопроцессорность подходит для гетерогенных и гомогенных ядер. |
Применение | Персональные компьютеры. | SoC модема для мобильных телефонов |
- https://dl.acm.org/doi/abs/10.1145/1654059.1654085
- https://www.sciencedirect.com/science/article/pii/S0743731505000882
Последнее обновление: 30 июля 2023 г.
Сандип Бхандари имеет степень бакалавра вычислительной техники Университета Тапар (2006 г.). Имеет 20-летний опыт работы в сфере технологий. Он проявляет большой интерес к различным техническим областям, включая системы баз данных, компьютерные сети и программирование. Подробнее о нем можно прочитать на его био страница.