Difference Between Symmetric and Asymmetric Multiprocessing

What is Symmetric Multiprocessing?

 Symmetric Multi-processing is a type of multi-processing wherein two or more processors working together to perform a task are connected through a shared main memory. Symmetric multi-processing involves utilising several CPUs to perform the task in a parallel and faster manner. Different processors working in symmetric multiprocessing perform those tasks independently, allowing them to be completed more quickly.

/10

IT Quiz

Test your knowledge about topics related to technology

1 / 10

Who founded Apple Computers?

2 / 10

The app or software, or website asks about access of your location, camera, storage, contacts etc., are known as

3 / 10

What does the acronym RAM stand for?

4 / 10

What is the radix of the octal number system?

5 / 10

When a machine possesses the ability to mimic human traits like make decisions, predict the future, learn and improve on its own said to have

6 / 10

'.MOV' extension usually refers to what kind of file?

7 / 10

Machine becomes intelligent once they are

8 / 10

What does AM mean?

9 / 10

Mark Zuckerberg is the owner of

10 / 10

Everyone knows what a robot is, but what is a 'cobot'?

Your score is

0%

The CPU in symmetric multiprocessing are connected via a shared main memory and has full access to input and output devices. The input and the output on this Multi processing platform follow a single route for incoming and outgoing. The operating system considered all the processors equal in the symmetric multi-processing. Each processor in this type of multi-processing processes distinct programs in executes several sets of data.

Symmetric processing provides perfect load balancing and advanced fault tolerance. Along with that, it also decreases the possibility of a CPU bottleneck. All the processors in the symmetric multi-processing have their private queue of ready-to-execute programs. They start working from those standard-ready queues whenever they receive the signal. 

What is Asymmetric Multiprocessing?

Asymmetric multiprocessing is one single master processor that handles a type of multi-processing wherein two or more processors work together. The CPUs on asymmetric multiprocessing are not identical and follow a master-slave relationship with one of the master processors. All the CPUs working under asymmetric multiprocessing are interconnected but do not have self-scheduling.

The master processor on the asymmetric multi-processing system manages all the tasks, such as the data structure and the scheduling of tasks for the other processors. If the master processor fails, any one of the slave processors assumes itself as a master processor and controls the execution of the processor. On the other hand, if any of the slave processors fails, another slave processor takes over its tasks.

Any processors working in the asymmetric multi-processing system cannot initiate any process. It can only follow the tasks assigned to it by the master processor. Working with a symmetric Multi-processing system becomes easy owing to its master-slave relationship. The incoming and outgoing network traffic on asymmetric networks follow several routes.

Difference Between Symmetric and Asymmetric Multiprocessing

  1. Symmetric multiprocessing systems are complex as it requires synchronisation to maintain the load balance.  On the other hand, asymmetric multiprocessing systems are pretty simple, as the master processor has access to all the data and doesn’t require synchronisation.
  2. All the CPUs in the Symmetric multiprocessing share the same memory, while in asymmetric multi-processing, a single master processor controls the data structure.
  3. The ready queue process is utilised in symmetric multiprocessors, while asymmetric multiprocessing utilises the Master slave approach.
  4. All the processors in symmetric multiprocessing communicate with each other through shared memory; on the other hand, there is no communication between processors in Asymmetric multiprocessing because the master processor controls them.
  5. In Symmetric multiprocessing, all the processors are the same in precedence, while in asymmetric multiprocessing, all the processors are unequal.

Comparison Between Symmetric and Asymmetric multiprocessing

Parameter of ComparisonSymmetric MultiprocessingAsymmetric Multiprocessing
OS taskAny processor performs OS tasks.The master processor only performs OS tasks.
CostSymmetric multiprocessing systems are costlier.Asymmetric multiprocessing systems are cheaper.
DesigningSymmetric multiprocessing systems are complex to design.Asymmetric multiprocessing systems are easier to design.
CoresSymmetric multi-processing is suitable for Homogenous cores. Asymmetric multiprocessing is suitable for heterogenous and homogenous cores.
Application Personal computers.Mobile phones modem baseband SoC

Want to save this article for later? Click the heart in the bottom right corner to save to your own articles box!

References
  1. https://dl.acm.org/doi/abs/10.1145/1654059.1654085
  2. https://www.sciencedirect.com/science/article/pii/S0743731505000882
One request?

I’ve put so much effort writing this blog post to provide value to you. It’ll be very helpful for me, if you consider sharing it on social media or with your friends/family. SHARING IS ♥️

Leave a Comment

Your email address will not be published. Required fields are marked *