2013-01-19 21 views
1

我正在评估使用OpenCL进行CPU设备性能关键数学表达式的即时编译的可能性。我目前直接使用LLVM(或者说,我有一个工作验证概念),但是会发现OpenCL提供的抽象非常有用。使用OpenCL for CPU设备调用外部函数

现在我试图找出是否有某种方式与外部联动通话功能使用的OpenCL对CPU设备时,相当于LLVM如下:

... = llvm::Function::Create(..., llvm::Function::ExternalLinkage, "...", ...); 

由于我的OpenCL实现在至少是建立在LLVM之上的,我希望这可以以某种方式实现。

回答

2
+0

不,那个链接是不是真的,我追求的。我的意思是从(CPU)内核中调用具有外部链接的函数。然而,第二个链接非常有用。答案表明,如果不进行与内核的“反向通信”,这可能根本不可能。 – Joel

+0

我会奖励你的赏金,因为你提供的两个链接本质上提供了我需要的所有信息。通过与clEnqueueNativeKernel结合使用与内核的反向通信,应该可以实质上从OpenCL内核调用任何外部函数。 – Joel