【发布时间】:2016-08-12 19:26:39
【问题描述】:
我的代码如下:
数组a 包含有关其元素所属组的信息。即元素i 属于组a[i]。每个组可以包含两个元素。我想将此信息存储在 b 中,其长度为 2*number 组。所以,b[j] 和 b[j+1] 的值会给我属于组 j/2(整数除法)和 j 的元素是偶数。
void assign(int *a, int *b){
for(int i = 0; i<N; i++){
int group = a[i];
int posit=2*group;
if(b[2*i]!=0){
posit++;
}
b[posit] = i;
}
}
N as is clear length of a.
b[] 中的默认值为零,表示没有元素。
有明确的数据依赖性,并行化看起来并不容易。我正在寻找进一步的建议,如果我缺少一种聪明的方法。
【问题讨论】:
标签: parallel-processing cuda openmp hpc