如何在MacPro上使用OpenCL中的double?

如何在MacPro上使用OpenCL中的double?,opencl,gpu,osx-mavericks,double-precision,Opencl,Gpu,Osx Mavericks,Double Precision,我有一个Mac Pro(2013年末),我想用OpenCL在double中做一些数学运算。当我使用Mavericks时,FirePro GPU的CL\u设备扩展只列出了CL\u APPLE\u fp64\u basic\u ops,所以我不能使用像exp()这样的双重数学函数。我最近升级到了约塞米蒂,现在正确的cl\u khr\u fp64在扩展列表中,但我仍然不能使用exp作为double。错误日志显示它正在寻找重载函数,exp可用于float、float4、float8等,。。。但不是64位

我有一个Mac Pro(2013年末),我想用OpenCL在double中做一些数学运算。当我使用Mavericks时,FirePro GPU的
CL\u设备扩展只列出了
CL\u APPLE\u fp64\u basic\u ops
,所以我不能使用像
exp()
这样的双重数学函数。我最近升级到了约塞米蒂,现在正确的
cl\u khr\u fp64
在扩展列表中,但我仍然不能使用exp作为double。错误日志显示它正在寻找重载函数,exp可用于float、float4、float8等,。。。但不是64位。我已包含打开fp64的命令:

#pragma OPENCL EXTENSION cl_khr_fp64 : enable
有人知道发生了什么事吗?为什么GPU说可以使用
cl\u khr\u fp64
,但我不能全部使用。我可以用双精度
+-*/
,但我以前也可以用
基本操作
。苹果对我撒谎说他们升级了对fp64的支持吗


奇怪的是,在我的CPU上,OpenCL还说,
cl\u khr\u fp64
也可用,但我也不能在CPU上使用exp。

在OpenCL C中,你应该称它们为double而不是cl\u khr\u fp64s
e、 g.
double pie=M_PI

double2 two_-pies=(double2){M_-PI};//或{M_PI,M_PI}

你试过吗:@MichaelDorner,我试过了,它返回了63个CL_DEVICE\u DOUBLE\u FP\u CONFIG,我还找到了苹果的文档,上面说D700支持DOUBLE。而且,当我通过OpenCL在我的CPU上运行它时,它也不工作。CPU还为CL\u设备\u DOUBLE\u FP\u配置返回63这是否回答了您的问题?