Joh*_*ica 6 delphi pascal cuda
我可以使用Delphi或FreePascal创建CUDA/OpenCL应用程序吗?
还是我被迫使用C++和Visual Studio?
快速搜索:cuda + pascal
打开了一些有希望的领先优势,但是如果我想用Pascal启动所有未使用的内核,我有什么选择呢?
小智 5
尝试DELPHI CUDA 在delphi中你应该使用DRIVER API来运行内核,这个实现可以帮助你.源代码中有一些示例 http://code.google.com/p/pascuda/
GLScene在其ComputeAPIs文件夹中具有 CUDA + OpenCL 标头转换,但不幸的是没有用于 CUDA/OpenCL 的 Pascal,因此实际的内核需要用 C 语言为 OpenCL/CUDA 编写。
可以使用 clEnqueueNativeKernel 纯粹使用所有 Delphi 代码,但本机内核只能在 CPU 上工作,目前不能在任何现有的 GPU 上工作。在最近的 Delphi 版本中,可以将本机内核与匿名方法结合起来,以产生相当好的解决方案。
例如。您可以编写一个包装函数,它接受匿名方法作为参数,并将其作为本机内核传递给 OpenCL,包装函数可以执行如下操作:
var
input1, input2, output: array[0..1023] of integer;
begin
Parallel.For(0, 1023,
procedure(i: Integer)
begin
output[i] := SomeFunc(input1[i]) + AnotherFunc(input2[i]);
end);
Run Code Online (Sandbox Code Playgroud)