неожиданное повышение производительности с критической секцией OpenMP - PullRequest
3 голосов
/ 26 августа 2011

Почему у меня есть преимущество с точки зрения времени выполнения с помощью следующего кода?

#pragma omp parallel for
for(i=0; i<size; i++)
{
  #pragma omp  critical
  {
    funcall1();
    funcall2();

    for(j=0;j<size2;j++)
    {
      funcall3();
     }

  }

}

он запускает в два раза больше серийной версии, но я не знаю, почему

1 Ответ

0 голосов
/ 26 сентября 2011

Похоже, что вторая переменная j может быть оптимизирована для области, потенциально может быть развернута.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...