So, guys, now let us try to understand what exactly parallelism is.
So continuing with the same example, the parallelism is very easy to understand.
Parallelism simply means that doing two or more different tasks in parallel that is at the same time.
Right?
So let us extend the same example.
So consider this time you have three well-diggers assigned a task to dig the respective 100ft deep.
Well.
Right.
But the only difference is that that each one of them now have their own personal well drilling tool
right now, that every person has its own personal well drilling tool.
It means that all the three can take the well in parallel.
Right.
And there is no need for anybody to take rest until he completes the work.
So it simply means that all of the three are doing the work in parallel.
So the work of all the three well diggers is in progression as well as they are doing the work very
fast.
Right.
So in parallelism, all the three well diggers will be able to complete the work in approximately three
by three times where t is the total time taken by all the three well diggers when they were digging
the well in a concurrent fashion.
So here because we have allocated more resources to the Well-digger here, resources means the well-drilling
tool, right?
And therefore they are.
And because they have more hardware resources, therefore they are able to work independently, they
are able to work without blocking each other.
Right.
Because of more hardware resources, no well-digger is ever dependent on other well-digger and they
can do their respective work in parallel.
So it simply means that the total effective time taken to complete the work in parallelism is a way
less than the time taken to complete the same amount of work in a concurrent manner.
Right.
So the point to be noted here is that that the three well-diggers are able to do their work in parallel
because they were provided with more hardware resources.
Right?
We were going to map these examples of doing work in a concurrent manner or doing work in a parallel
manner to the world of multithreading and see how this impact the the speed and throughput of the multithreaded
process.