Parallel Programming in OpenMP

In this chapter we have described how to exploit loop-level parallelism in OpenMP using the parallel do directive. We described the basic techniques used to identify loops that can safely be run in parallel and presented some of the factors that affect the performance of the parallel loop. We showed how each of these concerns may be addressed using the constructs in OpenMP.
Loop-level parallelism is one of the most common forms of parallelism found in programs, and is also the easiest to express. The parallel do construct is therefore among the most important of the OpenMP constructs. Having mastered loop-level parallelism, in the next chapter we will move on to exploiting more general forms of parallelism.