Это набор расширений, которые предоставляют C / C ++ возможность выполнять определенные части кода параллельно, без явного управления (создания, уничтожения, назначения) потоков.
Это в основном абстрагирует вас от сложности управления вашими потоками, позволяя вам декларативно выполнять определенные части вашего кода параллельно. Пример кода всегда поможет:
# pragma omp parallel \
shared ( n, x, y ) \
private ( i ) \
reduction ( + : xdoty )
# pragma omp for
for ( i = 0; i < n; i++ )
{
xdoty = xdoty + x[i] * y[i];
}