有没有办法从SEXP对象中提取C样式的函数指针?
Writing R Extensions zero-finding example几乎是我想要的。 f.check
的主体从R传递到C,然后使用eval
进行调用。由于我在CUDA中工作,因此无法以这种方式在SEXP对象上调用eval
或直接在Function
中使用Rcpp
类型。我必须在SEXP内解压缩原始函数指针,并将其传递给CUDA内核。
最佳答案
GPU只能运行由专门为该体系结构设计的代码组成的内核。我对CUDA知之甚少,但我认为其原理与OpenCL相同,后者几乎是C语言,带有用于处理GPU内存和并行架构的API。您不能只在GPU中运行R或C++代码。指针将为您提供的数字就是卡在GPU中的数字。您无法从GPU调用主内存中的函数。
关于c++ - R内部构件:从SEXP对象中提取函数指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33314427/