У меня есть эта функция, которую я хотел бы распараллелить, используя openmp:
for(i=len-1;i>=0;i--){
if(bin[i]==49) // bin is a binary number & is
// stored in a string. 49 is ascii value of 1
{
s=(s*x)%n;
}
x=(x*x)%n;
}
Я пытался использовать #pragma omp parallel for
, но он не работает. Я тоже пробовал с функцией сокращения, но получил неправильные ответы.
Я думаю, причина в том, что значение s зависит от x (которое зависит от значения каждого шага).