在 Lua/C++ 中定义用户自定义的 CUDA 核函数。

我想让用户定义在CUDA核函数中使用的函数(或被CUDA核函数调用)。

我不想将CUDA API暴露给用户。函数应该像典型的C++/Lua函数一样。

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

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

点赞
用户734069
用户734069

不,这根本不可能。

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

你最多可以做的就是编写一个编译器,将从C++/Lua编译成CUDA库。但这对于任何一种语言来说都是一个重大的任务。

2015-12-05 21:32:03