lua/c++中用户定义的CUDA内核

User-defined CUDA kernels in lua/c++

本文关键字:CUDA 内核 定义 用户 c++ lua      更新时间:2023-10-16

我希望允许用户定义要在CUDA内核中使用的函数(或由CUDA内核调用)。

我不想向用户公开CUDA API。这些函数应该看起来像典型的c++/lua函数。

我已经检查了pyCUDA,但它似乎只是围绕.cu代码的包装。

我宁愿有一个.loa或.cc文件,并使用函数指针。这有可能吗?

不,这根本不可能。

CUDA内核,通过设计,在GPU上执行。它们被编译成(NVIDIA)GPU特定的机器语言,并在一个与C++函数运行的任何东西完全不同的执行环境中执行,更不用说Lua了。它们不能简单地调用任意代码。

你可能做的最多的事情就是编写一个编译器,从C++/Lua编译到CUDA库中。但对于任何一种语言来说,这都是一项实质性的任务。