我想知道是否可以设置多个指向已在内存中分配的单个数据的指针?我问这个的原因是因为我在推力向量的帮助下用 gpu 实现了字典排序(并且在时间方面失败了)
例如,我正在尝试实现这些 c++ 语句的等价物
unsigned int * pword; //setting up the array of memory for permutations of word
pword = new unsigned int [N*N];
unsigned int* * p_pword; //pointers to permutation words
p_pword = new unsigned int* [N];
//setting up the pointers on the locations such that if N=4 then 0,4,8,12,...
int count;
for(count=0;count<N;count++)
p_pword[count]=&pword[count*N];
我不是要求有人为我提供代码,我只是想知道有什么方法可以设置指向单个数据数组的指针。PS:我尝试了以下方法,但根本没有实现任何加速
int * raw_ptr = thrust::raw_pointer_cast(&d_Data[0]); //doing same with multiple pointers
但我想由于我指向 device_vector 的事实,这可能是访问速度慢的问题
非常感谢这方面的任何帮助。