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. |