是否可以将内存添加到全局内存中先前分配的数组?
我需要做的是:
//cudamalloc memory for d_A
int n=0;int N=100;
do
{
Kernel<<< , >>> (d_A,n++);
//add N memory to d_A
while(n!=5)}
Run Code Online (Sandbox Code Playgroud)
做另一个cudamalloc删除以前分配的数组的值?在我的情况下,应该保留以前分配的数组的值...
我想动态分配全局2D数组CUDA.我怎样才能做到这一点?
在我的主要部分,我Kernel在循环中呼唤我.但在我调用内核之前,我需要在内核上分配一些内存GPU.在内核调用之后,从GPU向CPU发送单个整数以通知问题是否已解决.
如果问题没有解决,我将不会释放旧内存,因为还需要它,我应该GPU为内核分配新内存并再次调用内核.
显示一个sudocode:
int n=0,i=0;
while(n==0)
{
//allocate 2d memory for MEM[i++]
//call kernel(MEM,i)
// get n from kernel
}
__global__ void kernerl(Mem,int i)
{
Mem[0][5]=1;
Mem[1][0]=Mem[0][5]+23;//can use this when MEM[1] is allocated before kernel call
}
Run Code Online (Sandbox Code Playgroud)
有什么建议?谢谢.