Concurrency and parallelism

Concurrency is the simultaneous execution of multiple pieces of code. Theoretically, concurrency can significantly increase the speed of code execution and it is widely used in software. For example, tasks that require some sort of big loop that does exactly the same operation many times with no interaction between those operations (for example, vectorized operations on dataset columns) are often called embarrassingly parallel and present a good target for concurrent execution. That being said, it has its limitations and suits some tasks (for example, where a number of tasks are independent of each other) better than others—read about Amdahl's law for some theoretical background. 

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.226.34.105