Competition and parallelism are related but not equal terms, and often as wrong as similar terms. The crucial difference between competition and parallelism that competition it is about dealing with many things simultaneously (d the illusion of simultaneity) or managing concomitant events that essentially conceal latency. On the contrary, the parallelism is to do a lot of things at the same time to increase speed.
Parallel execution processes must be concurrent unless they are handled at the same time, but processes that run concurrently could never be parallel because they are not processed at the same time.
|Basic||the act of managing and performing multiple calculations at the same time.||the act of performing multiple calculations simultaneously.|
|Reached up||Interleaving operation||Using multiple CPUs|
|Benefits||Increase in the amount of work done at a time.||Throughput improvement, computational acceleration|
|Use||Change of context||Multiple CPUs for multiple process operation.|
|Processing unit requests||Probably single||multiple|
|Example||Running multiple applications simultaneously.||Running web crawlers on a cluster.|
Definition of competition
The competition a technique used to reduce the time of reply the system using a single processing unit or sequential processing . An activity divided into several parts and its part is processed simultaneously but not at the same time. It produces the illusion of parallelism, but in reality the blocks of a task are not processed in parallel. Competition is achieved interlacing the process operation on the CPU, in other words via context switching, where control is quickly exchanged between different process threads and unrecognizable switching. This is the reason why it seems parallel processing.
Competition gives the multiparty access to shared resources and requires some form of communication. It works on one thread when it is making useful progress, stops the thread and switches to different threads unless it is making useful progress.
Definition of parallelism
Parallelism designed to increase the speed of calculation using multiple processors. a technique of simultaneous execution of different tasks at the same time. It involves several IT processing units or independent IT devices that perform parallel operational and execution activities in order to increase computational acceleration and improve throughput.
Parallelism translates into an overlap of CPU and I / O activities in a single process with the CPU and I / O activities of another process. While when concurrency is implemented, the speed is increased by overlapping the I / O activities of one process with the CPU process of another process.
Key differences between competition and parallelism
- Competition is the act of running and managing multiple activities simultaneously. On the other hand, parallelism is the act of performing several tasks simultaneously.
- Parallelism is achieved by using multiple CPUs, such as a multiprocessor system and by managing different processes on these processing units or CPUs. On the contrary, competition is obtained through the interleaving of the processes on the CPU and in particular the change of context.
- Competition can be implemented using a single processing unit, while it cannot be possible in case of parallelism, it requires multiple processing units.
In summary, competition and parallelism are not exactly similar and can be distinguished. Competition could involve the different tasks running and with overlap times . On the other hand, parallelism involves several activities that take place simultaneously and tend to have the same time of Start is end .