【发布时间】:2023-04-06 18:17:02
【问题描述】:
据我了解,#pragma omp parallel 及其变体基本上在多个并发线程中执行以下块,这对应于 CPU 的数量。当有嵌套的并行化——parallel for within parallel for、parallel function within parallel function等——内部并行化会发生什么?
我是 OpenMP 的新手,我想到的情况可能相当简单 - 将向量与矩阵相乘。这是在两个嵌套的 for 循环中完成的。假设 CPU 的数量小于向量中的元素数量,尝试并行运行内部循环有什么好处吗?总线程数会大于CPU数,还是内层循环顺序执行?
【问题讨论】:
标签: c++ multithreading nested parallel-processing openmp