Я хочу запустить следующее l oop для параллельного подсчета элементов. Поскольку count[j]
обновляется только итерациями, где (X[i] / exp) % 10
оценивается как j
, я хочу определить разные критические секции для каждого из них. Сначала я подумал об использовании предложения сокращения для каждого элемента массива, но это дало ошибку компиляции. Я знаю, что этот код неверен, но как мне реализовать такие вещи?
#pragma omp parallel for
for (i = 0; i < n; i++)
#pragma omp critical((X[i] / exp) % 10)
count[(X[i] / exp) % 10]++;