Я новичок в openmp.Я пытаюсь использовать openmp для распараллеливания вложенных циклов с массивом внутри них.Индекс массива отличается от индексов цикла.Я пробовал следующее, но я не смог получить правильные результаты.Запрашиваются предложения по распараллеливанию следующего кода.Большое спасибо
int iX, iY, iPart = 0;
#pragma omp parallel for private(iY) shared(iPart)
for (iX = xStart; iX <= xEnd; iX++) {
for (iY = yStart; iY <= yEnd; iY++) {
if (number[iX][iY].count > 0) {
int numCount = number[iX][iY].count;
for (int i = 0; i < numCount; i++) {
A[iPart] = B[number[iX][iY].list[i]];
#pragma omp atomic
iPart++;
}
}
}
}