OpenMP is an implementation of multithreading, where a master thread creates a specific number of child threads (slaves). The system splits a master’s computational task into smaller ones and distributes them to threads. These threads then compute concurrently. Each thread is executed on a different processor. Parts of code that should run in parallel (parallel regions) are distinguished by specific compiler directives inserted into the code.

Related program(s): Related report(s):