1
我不清楚openMP中「共享」的含義。我看到spec指出共享「聲明一個或多個列表項目以供任務共享...」但這似乎不清楚。關鍵字「共享」是否阻止競爭條件?
舉例來說,如果我有以下代碼:
#pragma omp parallel for shared(num1)
for(i=0; i<m; i++) {
for(j=0; j < n; j++) {
if(myFunc(i,j) < 0) {
num1 += 256*u(i,j);
}
}
}
請問這種進站與NUM1條件,並在本月底for循環提供準確的結果?如果不是,它究竟做了什麼?
我仍然沒有得到什麼呢共享。這些變量是否已經被多個線程看到?他們不共享內存嗎? – 2013-05-13 22:03:01