次の構造を持つコードがあります。
#pragma omp parallel for
for( i = 0; i < N; i++ )
{
.....
index = get_index(...);
array[index] = ...;
.....
}
現在、 の値はindex
スレッドごとに一意です (異なるスレッドで重複することはありません) が、もちろん OpenMP はこれを推測できず、同期オブジェクトを使用して にアクセスしていると思いますarray
。
同期オブジェクトを使用しないようにopenmpに依頼し、値が異なるスレッドで一意でarray
あることに頼るにはどうすればよいですか。index
プライベート リストに入れようとしましarray
たが、セグメンテーション エラーが発生しました。