MileKing 2013-07-14 07:27
浏览 3006

cuda cudaMemcpy 报错 unkown error

我是一个cuda新手,现在在测试一个程序,它报的错误是 unkown error ,是从最后的cudaMemcpy报出来的,求高人指教,我不知道是错在哪里了,在此谢过

#include "cuda_runtime.h"
#include "device_launch_parameters.h"
#include
#include
#define N (128*128*2)

global void times(int *div_c)
{
int tmp = threadIdx.x+ blockIdx.x*blockDim.x;
while(tmp<N)
{
div_c[tmp]=tmp;
tmp+=blockIdx.x*gridDim.x;
}
}

int main(void)
{
int c[N];
int i;
clock_t t;
int *div_c;
cudaError_t error;

for(i=0;i<N;++i)
{
    c[i]=0;
    if(c[i]!=0)
    {
        printf("error4");
    }
}
printf("start\n");
t=clock();
error=cudaMalloc((void **)&div_c,sizeof(int)*N);
if(error!=cudaSuccess)
{
    printf("error1");
    getchar();
    return 1;
}
error = cudaMemcpy(div_c,c,sizeof(int)*N,cudaMemcpyHostToDevice);
if(error!=cudaSuccess)
{
    printf("error2");
    getchar();
    return 1;
}
times<<<128,128>>>(div_c);

error = cudaMemcpy(c,div_c,sizeof(int)*N,cudaMemcpyDeviceToHost);
if(error!=cudaSuccess)
{
    printf("%s\n",cudaGetErrorString(error));
    getchar();
    return 1;
}
t= clock()-t;
printf("%d\n",t);
getchar();
printf("%d\n",c[0]);
getchar();
for(i=0;i<N-1;++i)
{

        printf("%d  %d \n",c[i],c[i+1]);
}
getchar();
return 0;
cudaFree(div_c);

}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 素材场景中光线烘焙后灯光失效
    • ¥15 请教一下各位,为什么我这个没有实现模拟点击
    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 保护模式-系统加载-段寄存器