我有4核心的計算機和OMP應用程序與2重任務。OpenMP,使用並行的所有核心
int main()
{
#pragma omp parallel sections
{
#pragma omp section
WeightyTask1();
#pragma omp section
WeightyTask2();
}
return 0;
}
每個任務都有這樣有分量的組成部分:
#omp pragma parallel for
for (int i = 0; i < N; i++)
{
...
}
我編譯的程序與-fopenmp
參數,做出export OMP_NUM_THREADS=4
。 問題是只有兩個核心加載。我如何在我的任務中使用所有內核?
我應該用兩個'for'循環? (i從0到N/2 - 1)和(i從N/2到N-1)? –