通过CUDAfy

时间:2016-01-13 08:01:36

标签: c# opencl cudafy.net

我正在使用CUDAfy和C#。对于我的内核,我需要双精度。在CUDA中,这没有问题,它是自动支持的。但是,为了支持非NVIDIA硬件,用户也应该能够使用OpenCL。在这里,据我所知,必须手动激活双精度。目前,编译器抛出异常

  

编译错误:: 8:32:错误:使用类型' double'要求   要启用cl_khr_fp64扩展名

要在内核代码中执行此操作,通常会添加一行

#pragma OPENCL EXTENSION cl_khr_fp64 : enable

现在有办法

a)告诉CUDAfy在OpenCL硬件上启用双精度 b)加载现有的CUDA C代码而不是翻译C#代码?

我的硬件支持CUDA 3.0和OpenCL 1.2。

1 个答案:

答案 0 :(得分:0)

回应(a)部分

我一直在使用带有OpenCL 1.2的AMD Radeon 7970的CUDAfy。使用此硬件,CUDAfy可自动启用双精度。我没有必要启用它才能在我的C#[Cudafy]内核方法中使用双打。