Unix: Running processes in parallel in unix shell

By using the ampersand '&' , we can run processes in parallel. Example 1: Consider the following script

for i=0; i<10;i++
do
 cat inp$i.txt;
done

The above script would run sequentially executing cat inp1.txt; cat inp2.txt; cat inp3.txt' ..... We can issue these processes in parallel by using '&' instead ';'

for i=0; i<10;i++
do
 cat inp$i.txt &
done

Example 2:

$ runprog1; runprog2; runprog2;

Above statement would execute sequentially.

$ runprog1&runprog2&runprog2&

Above statement would execute all in parallel

$ (runprog1; runprog2; runprog2;)&

Above statement would start processes sequentially and then execution is parallel.

No comments:

Post a Comment

Python contextlib for Timing Python code

If you've ever found yourself needing to measure the execution time of specific portions of your Python code, the `contextlib` module o...