Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
自动将函数前缀添加到C++;功能 我通过CUDA移植一个小的C++代码库到图形卡上。 CUDA要求所有函数都在\uuuuuuu主机\uuuuuuuuu设备\uuuuuuu前面,以便在CPU和GPU内核代码中都可以调用。e、 g void foo() {} // callable on CPU, not on GPU __host__ __device__ foo() {} // callable on CPU and on GPU_C++_Cuda_Metaprogramming - Fatal编程技术网

自动将函数前缀添加到C++;功能 我通过CUDA移植一个小的C++代码库到图形卡上。 CUDA要求所有函数都在\uuuuuuu主机\uuuuuuuuu设备\uuuuuuu前面,以便在CPU和GPU内核代码中都可以调用。e、 g void foo() {} // callable on CPU, not on GPU __host__ __device__ foo() {} // callable on CPU and on GPU

自动将函数前缀添加到C++;功能 我通过CUDA移植一个小的C++代码库到图形卡上。 CUDA要求所有函数都在\uuuuuuu主机\uuuuuuuuu设备\uuuuuuu前面,以便在CPU和GPU内核代码中都可以调用。e、 g void foo() {} // callable on CPU, not on GPU __host__ __device__ foo() {} // callable on CPU and on GPU,c++,cuda,metaprogramming,C++,Cuda,Metaprogramming,将\uuuuu host\uuuuuuu\uuuuuu device\uuuuuu添加到我的代码库中的每个函数是一项乏味但直接的任务,但我想知道:是否有一种有效的方法来为C/C++函数预先添加限定符 我很乐意使用检测所有函数声明的文本编辑器技术,或者使用编译器特性。然而,我不知道有一个解决方案涉及这两个方面 想法?我不知道有这样的编译器功能。不过,我还是要谨慎地广泛应用这些指令,因为在不需要时,调用约定和堆栈管理可能与正常主机约定有很大不同(例如,较慢?)。我可能会把自己的宏放在一起,例如#de

\uuuuu host\uuuuuuu\uuuuuu device\uuuuuu
添加到我的代码库中的每个函数是一项乏味但直接的任务,但我想知道:是否有一种有效的方法来为C/C++函数预先添加限定符

我很乐意使用检测所有函数声明的文本编辑器技术,或者使用编译器特性。然而,我不知道有一个解决方案涉及这两个方面


想法?

我不知道有这样的编译器功能。不过,我还是要谨慎地广泛应用这些指令,因为在不需要时,调用约定和堆栈管理可能与正常主机约定有很大不同(例如,较慢?)。我可能会把自己的宏放在一起,例如
#define HDFN uuu主机uuu设备uu
,这样就很容易添加/更改了


除此之外,您还可以挖掘一个用于检测方法的正则表达式并编写一个简单的宏…

我不知道有任何这样的编译器功能。不过,我还是要谨慎地广泛应用这些指令,因为在不需要时,调用约定和堆栈管理可能与正常主机约定有很大不同(例如,较慢?)。我可能会把自己的宏放在一起,例如
#define HDFN uuu主机uuu设备uu
,这样就很容易添加/更改了


除此之外,你也许可以挖掘一个正则表达式来检测方法并编写一个简单的宏…

是的,现在我正在用宏手工注释所有内容。你认为正则表达式会是什么样子?这里有人开始C++方法:你必须修改返回类型以匹配你看到的事物……是的,现在我用宏来注释所有的东西。你认为正则表达式会是什么样子?这里有C++的方法的开始:你必须修改返回类型以匹配你看到的事物的类型…