小编Ala*_*min的帖子

带有整数参数的CUDA pow函数

我是CUDA的新手,无法理解我做错了什么.

我正在尝试计算它在数组中具有id的对象的距离,数组中的轴x和数组中的轴y以找到每个对象的邻居

__global__ 
void dist(int *id_d, int *x_d, int *y_d, 
              int *dist_dev, int dimBlock, int i)
{
    int idx = threadIdx.x + blockIdx.x*blockDim.x;

    while(idx < dimBlock){
        int i;
        for(i= 0; i< dimBlock; i++){
            if (idx == i)continue;
            dist_dev[idx] = pow(x_d[idx] - x_d[i], 2) + pow(y_d[idx] - y_d[i], 2); // error here
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

pow不是在内核代码中定义的?

cuda gpgpu

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

新动态记忆"第一次"

为什么错误

#include <stdio.h>

int main(void)
{
    int *p, size, i;
    FILE *fp;

    fp = fopen("input.txt","r");
    fscanf(fp, "%d", &size);

    p = (int*)malloc(size*sizeof(int));  //error
    for (i = 0; i <size; i++)
        fscanf(fp, "%d", &p[i]);

    for (i = size-1; i>= 0; i--)
        printf("%d\n", p[i]);

    free(p);
    fclose(fp);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我在ubuntu上使用"Geany"

并在Geany编译器上:

fileName.c:11:2:警告函数'malloc'的隐式声明[-Wimplicit-function-declatation] fileName.c:11:12:警告:内置函数'malloc'的不兼容隐式声明[默认启用] fileName.c:18:12:warning:函数'free'的隐式声明[-Wimplicit-function-declaration] fileName.c:18:12:警告:内置函数'free'的不兼容隐式声明[enabled-by默认]编译成功完成

c dynamic-memory-allocation

0
推荐指数
1
解决办法
249
查看次数

标签 统计

c ×1

cuda ×1

dynamic-memory-allocation ×1

gpgpu ×1