Difference between Multiprocessing and Multithreading

Both Multiprocessing and Multithreading are used to increase the computing power of a system.

Multiprocessing:
Multiprocessing is a system that has more than one or two processors. In Multiprocessing, CPUs are added for increasing computing speed of the system. Because of Multiprocessing, There are many processes are executed simultaneously. Multiprocessing are classified into two categories:

1. Symmetric Multiprocessing
2. Asymmetric Multiprocessing 





Multithreading:
Multithreading is a system in which multiple threads are created of a process for increasing the computing speed of the system. In multithreading, many threads of a process are executed simultaneously and process creation in multithreading is done according to economical.







Difference between Multiprocessing and Multithreading:

S.NO Multiprocessing Multithreading
1. In Multiprocessing, CPUs are added for increasing computing power. While In Multithreading, many threads are created of a single process for increasing computing power.
2. In Multiprocessing, Many processes are executed simultaneously. While in multithreading, many threads of a process are executed simultaneously.
3. Multiprocessing are classified into Symmetric and Asymmetric. While Multithreading is not classified in any categories.
4. In Multiprocessing, Process creation is a time-consuming process. While in Multithreading, process creation is according to economical.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.