Difference Between Symmetric Multiprocessing vs. Asymmetric Multiprocessing

Advertisement

Main Difference

The difference between symmetric multiprocessing and asymmetric multiprocessing is that in symmetric multiprocessing each processor run the task in operating system whereas in asymmetric multiprocessing only a master processor run the tasks of the operating system.

Advertisement

Symmetric Multiprocessing vs. Asymmetric Multiprocessing

The system that has more than one processor is known as a multiprocessing system. More than two processors are added to increase the power of the computer. CPU has set of registers the process is stored in these registers. For example, if the process of addition of two numbers is made the integers will be saved in registers and the addition of number is also stored in a register. If there will be more than one process, there will be more registers than if one processor will do work and other will be free in this way power of the computer is increased. There are types of processors such as symmetric multiprocessing and asymmetric multiprocessing. If we talk about symmetric multiprocessing, in symmetric multiprocessing the processor is free to run and can run any process whereas in the case of multithreading there is a master-salve relationship. In multiprocessing, there is an integrated memory controller that job of the integrated memory controller is to add more memory. Symmetric multiprocessing and asymmetric multiprocessing are the types of multiprocessing. If we talk about the main difference between symmetric multiprocessing and asymmetric multiprocessing then the main difference between symmetric multiprocessing and asymmetric multiprocessing is that in symmetric multiprocessing each processor run the task in operating system.

Advertisement

The type of multiprocessing in which all the processor run the task in the operating system is known as symmetric multiprocessing. In asymmetric multiprocessing there is master slave relationship but in symmetric multiprocessing there is no master slave relationship. In asymmetric multiprocessing only a master processor run the tasks of operating system. There are many processor in asymmetric multiprocessing that share one network. Master is one who allots a processor to the slave. Every processor predefined task to perform. In asymmetric multiprocessing master data structure is master slave. All the system activities are controlled by the master processor. To continue the execution, there is a case where master processor fails one processor among the slave processor is made. There can be many threads in a process, in multithreading, multiple threads are created. A thread in multithreading is a process means a code segment of a process. A thread has its own thread ID, program counter, registers, and stack. If we create separate processes for each service, then each processor share code, data and system resources. If we do not create threads, the system can get exhausted. Creating threads can make processor easy for working. The responsiveness is increased in multithreading, and this is the best advantage of using multithreading. The big advantage of multithreading is resource sharing and in resource sharing the several threads of a process share same code. In symmetric multiprocessing, all processor communicate using shared memory. From the common ready queue, the processors start executing the processes. There can be a private queue in symmetric multiprocessing which allows the process to get executed. There can be a scheduler in symmetric multiprocessing that makes sure that no two processor execute the same time. Proper load balancing is one of the main features of symmetric multiprocessing. In symmetric multiprocessing better fault tolerance reduces the chance of CPU bottleneck. Symmetric multiprocessing is complex because memory is shared among all the processor. If a processor is a failure, then the symmetric multiprocessing result in reduced computing capacity.

Advertisement

Comparison Chart

BasisSymmetric MultiprocessingAsymmetric Multiprocessing
MeaningIn symmetric multiprocessing, each processor run the task in an operating systemIn asymmetric multiprocessing, only a master processor run the tasks of the operating system.
ProcessIn symmetric multiprocessing, process is taken from the ready queueIn asymmetric multiprocessing, process are master slave
ArchitectureIn symmetric multiprocessing, all processor have the same architectureIn asymmetric multiprocessing, all processor have different architecture
EaseSymmetric multiprocessing is complexAsymmetric multiprocessing is easy

What is Symmetric Multiprocessing?

The type of multiprocessing in which all the processor run the task in the operating system is known as symmetric multiprocessing. In asymmetric multiprocessing, there is a master slave relationship, but in symmetric multiprocessing, there is no master slave relationship. In symmetric multiprocessing, all processor communicate using shared memory. From the common ready queue, the processors start executing the processes. There can be a private queue in symmetric multiprocessing which allows the process to get executed. The system that has more than one processor is known as a multiprocessing system. More than two processors are added to increase the power of the computer. CPU has set of registers the process is stored in these registers. For example, if the process of addition of two numbers is made the integers will be saved in registers and the addition of number is also stored in a register. If there will be more than one process, there will be more registers than if one processor will do work and other will be free in this way power of the computer is increased. There are types of processors such as symmetric multiprocessing and asymmetric multiprocessing. If we talk about symmetric multiprocessing, in symmetric multiprocessing the processor is free to run and can run any process whereas in the case of multithreading there is a master-salve relationship. In multiprocessing, there is an integrated memory controller that job of the integrated memory controller is to add more memory. There can be a scheduler in symmetric multiprocessing that makes sure that no two processor execute the same time. Proper load balancing is one of the main features of symmetric multiprocessing. In symmetric multiprocessing better fault tolerance reduces the chance of CPU bottleneck. Symmetric multiprocessing is complex because memory is shared among all the processor. If a processor is a failure, then the symmetric multiprocessing result in reduced computing capacity.

What is Asymmetric Multiprocessing?

In asymmetric multiprocessing, only a master processor run the tasks of the operating system. There are many processors in asymmetric multiprocessing that shares one network. Master is one who allots a processor to the slave. The system that has more than one processor is known as a multiprocessing system. More than two processors are added to increase the power of the computer. CPU has set of registers the process is stored in these registers. For example, if the process of addition of two numbers is made the integers will be saved in registers and the addition of number is also stored in a register. If there will be more than one process, there will be more registers than if one processor will do work and other will be free in this way power of the computer is increased. There are types of processors such as symmetric multiprocessing and asymmetric multiprocessing. If we talk about symmetric multiprocessing, in symmetric multiprocessing the processor is free to run and can run any process whereas in the case of multithreading there is a master-salve relationship. In multiprocessing, there is an integrated memory controller that job of the integrated memory controller is to add more memory. Every processor predefined task to perform. In asymmetric multiprocessing, the master data structure is a master slave. All the system activities are controlled by the master processor. To continue the execution, there is a case where master processor fails one processor among the slave processor is made.

Key Differences

  1. In symmetric multiprocessing, each processor runs the task in operating system whereas in asymmetric multiprocessing only a master processor run the tasks of the operating
  2. In symmetric multiprocessing, process is taken from ready queue whereas in asymmetric multiprocessing process is a master
  3. In symmetric multiprocessing all processor have the same architecture, In asymmetric multiprocessing, all processor have different architecture
  4. Symmetric multiprocessing is complex whereas Asymmetric multiprocessing is easy

Video Explanation