Asymmetric multiprocessing is the use of two or more processors handled by one master processor. All CPUs are interconnected but are not self-scheduling. AMP is used to schedule specific task to CPU based on priority and importance of task.
Symmetric multiprocessing is the use of two or more self-scheduling processors sharing a common memory space. Each processor has access to I/O and memory devices. SMP applies multiple CPUs to a task to complete in parallel and faster fashion.
|Sr. No.||Key||Asymmetric Multiprocessing||Symmetric Multiprocessing|
|1||CPU||All processors are not equal in precedence.||All processors are same in precedence.|
|2||OS Task||OS task is done by master processor.||OS task can be done by any processor.|
|3||Communication Overhead||No communication overhead between processors as they are controlled by master processor.||All processor communicates to each other using shared memory.|
|4||Process Scheduling||Master-Slave approach is used.||A ready queue of processes is used.|
|5||Cost||Asymmetric multiprocessing is cheaper to implement.||Symmetric multiprocessing is costlier to implement.|
|6||Design Complexity||Asymmetric multiprocessing is simpler to design.||Symmetric multiprocessing is complex to design.|