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 oracle集群安装出bug
    • ¥15 关于#python#的问题:自动化测试
    • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
    • ¥15 教务系统账号被盗号如何追溯设备
    • ¥20 delta降尺度方法,未来数据怎么降尺度
    • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
    • ¥15 再不同版本的系统上,TCP传输速度不一致
    • ¥15 高德地图2.0 版本点聚合中Marker的位置无法实时更新,如何解决呢?
    • ¥15 DIFY API Endpoint 问题。
    • ¥20 sub地址DHCP问题