Parallel processing 错误-必须配置一个全局函数调用

Parallel processing 错误-必须配置一个全局函数调用,parallel-processing,cuda,Parallel Processing,Cuda,我正在写一个大整数加法、减法、乘法和除法的代码。但是在编译代码时,我遇到了这个错误,以及另一个错误错误:一个uu全局函数必须有一个void返回类型 代码有700行长,有多行错误。因此,为了方便起见,我附上了我的谷歌Colab笔记本的链接。请检查一下 这是我得到的错误 /content/src/omp_cuda80.cu(94): error: a __global__ function must have a void return type /content/src/omp_cuda80.c

我正在写一个大整数加法、减法、乘法和除法的代码。但是在编译代码时,我遇到了这个错误,以及另一个错误
错误:一个uu全局函数必须有一个void返回类型

代码有700行长,有多行错误。因此,为了方便起见,我附上了我的谷歌Colab笔记本的链接。请检查一下

这是我得到的错误

/content/src/omp_cuda80.cu(94): error: a __global__ function must have a void return type

/content/src/omp_cuda80.cu(139): warning: missing return statement at end of non-void function "addition"

/content/src/omp_cuda80.cu(265): warning: variable "n" was declared but never referenced

/content/src/omp_cuda80.cu(367): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(381): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(390): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(442): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(456): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(465): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(533): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(538): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(548): error: a __global__ function call must be configured

/content/src/omp_cuda80.cu(553): error: a __global__ function call must be configured

11 errors detected in the compilation of "/content/src/omp_cuda80.cu".
/bin/bash: /content/src/omp_cuda80: No such file or directory

如果使用
\uuuu global\uuuu
定义CUDA函数,则需要使用以下语法调用它

function<<<grid,block>>>(param1,param2,...); 
这就是为什么您得到
一个必须配置的
函数调用


GPU函数也不返回值,它们必须返回
void
。您可以在指针中获取返回值,并在需要时将其复制到CPU以进行检查。还有其他方法,但它超出了本答案的范围。

我认为您需要最基本的CUDA教程,因为现在,您只是“猜测”了CUDA是如何编写的,令人惊讶的是,猜测是错误的。
function(param1,param2,...);