s*******g 发帖数: 414 | 1 请高手帮我看看,我这个pseudo code 转成C++代码,错误出在哪里呀?运行起来不能
很好地实现barrier的功能,头痛啊,只好上来求助。pseudo code 在附件中。
void master_slave_barrier(int k, int p)
{
bool arrived[63];
int i;
#pragma omp parallel shared(arrived)private(i)
{
for( i =1 ; i<=p-1; i++ )
{
arrived[i] = false;
}
if (k == 0)
{
for ( i =1 ; i<=p-1; i++)
while(!arrived[i]);
for ( i =1 ; i<=p-1; i++)
arrived[i] = false;
}
else
{
arrived[k] = true;
while(arrived[k]);
}
}
} |
|