假设我有一个包含 n 个元素和 n_threads 的向量。我想使用#pragma omp parallel
这样的方式,每个线程接收 n / n_threads 块大小,最后一个取决于具体情况。
#include <stdio.h>
#include <omp.h>
int main()
{
int *v = malloc ( n * sizeof(int) );
#pragma omp parallel for (what should i put here?)
for(i = 0; i < n; ++i)
{
++v[i];
}
return 0;
}
例如:n = 10003,n_threads = 4
- thread_0 应该得到 2500 个块
- thread_1 应该得到 2500 个块
- thread_2 应该得到 2500 个块
- thread_3 应该得到 2503 个块