相关疑难解决方法(0)

如何告诉openmp不要同步数组

我有一个具有以下结构的代码.

#pragma omp parallel for
for( i = 0; i < N; i++ )
{
    .....
    index = get_index(...);
    array[index] = ...;
    .....
}
Run Code Online (Sandbox Code Playgroud)

现在index每个线程的值都是唯一的(它永远不会为不同的线程重叠),但是当然OpenMP无法猜测这个,我想是使用同步对象来访问array.

我怎么能要求openmp不要使用同步对象,array并依赖我,这个index值对于不同的线程是唯一的.我试图放入array私人列表,但是因此出现了分段错误.

c linux gcc x86-64 openmp

2
推荐指数
1
解决办法
602
查看次数

标签 统计

c ×1

gcc ×1

linux ×1

openmp ×1

x86-64 ×1