相关疑难解决方法(0)

如何在内核中动态分配数组?

我需要在内核函数中动态分配一些数组.我怎么能这样做?

我的代码是这样的:

__global__ func(float *grid_d,int n, int nn){  
    int i,j;  
    float x[n],y[nn];  
    //Do some really cool and heavy computations here that takes hours.  
}
Run Code Online (Sandbox Code Playgroud)

但那不行.如果这是在主机代码中我可以使用malloc.cudaMalloc需要主机上的指针,以及设备上的其他指针.在内核函数内部,我没有主机指针.

所以我该怎么做?

如果花费太长时间(几秒钟)来分配所有数组(我需要大约4的大小为n和5大小为nn),这不会是一个问题.因为内核可能至少运行20分钟.

c cuda gpgpu

20
推荐指数
2
解决办法
2万
查看次数

STL,iostream,new,C/C++中的CUDA删除

我可以在C/C++中为CUDA使用STL,iostream,new,delete吗?

c c++ iostream stl cuda

6
推荐指数
1
解决办法
2380
查看次数

标签 统计

c ×2

cuda ×2

c++ ×1

gpgpu ×1

iostream ×1

stl ×1