OpenCL:MQL5中的内部实现测试 - 页 53

 
'CL_DEVICE_COUNT' - undeclared identifier    Struct_OpenCL__1.mq5    105    79


帮助有,脚本没有。


而这种乱七八糟的标识符何时才能结束?

 
Mathemat:
'CL_DEVICE_COUNT' - undeclared identifier    Struct_OpenCL__1.mq5    105    79

在630建设工作中。
 
joo: 我使用Tychkov教授的方法在我的电脑中检测到了一个神秘的设备1,它比CL_USE_ANY 更快,甚至比CL_USE_GPU_ONLY 更快。

它是什么?:O

运行GPU Caps,会有大量的信息。

你可能有两个设备。0是主机,即CPU,而1是你的独立卡。

125毫秒和78毫秒之间的时间差并不明显,不应该被认为是GetTicksCount()错误。

CL_USE_ANY和CL_USE_GPU_ONLY只是选择设备的 "面具",而不是单个设备。

 
Mathemat:

运行GPU Caps,会有大量的信息。

你可能有两个设备。0是主机,即CPU,而1是你的独立卡

公用事业在哪里显示这个?
 
joo:
你从哪里可以看到它的效用?

看这里。

展开右边的列表,看看你有哪些设备。

宿主应该始终为零,这就是宿主的作用...

 
Mathemat:

而且你可能有两个设备。0是主机,即CPU,而1是你的独立卡

数学

看这里。

展开右边的列表,看看你有哪些设备。

它不会加起来。


 

总之...这并不奇怪。你必须至少有两个设备,这是没有办法的事。它们就在那里,只是在不同的平台上。

而MT5设法看到它们,不管是什么平台。CLGetInfoInteger(0, CL_DEVICE_COUNT)告诉你什么?是2,对吗?

 
Mathemat:

而MT5设法看到它们,不管是什么平台。CLGetInfoInteger(0, CL_DEVICE_COUNT)告诉你什么?是2,对吗?

那么2,那又怎样?你怎么知道设备0是显卡,1是CPU?这就是我的观点--你不能。

嗯,当然,你可以做一个程序OpenCL,在内部获得所有你需要的信息,哪个设备有什么号码。但你不能在外面使用MQL5来做这件事。

 
joo:

那么2,那又怎样?你怎么知道设备0是显卡,1是CPU?这就是我所说的--你不能。

当然,你可以使用OpenCL,在内部获得所有你需要的信息,描述设备序列号。但你不能在外面使用MQL5来做这件事。

OpenCL功能 将很快被扩展(添加)到语言中。因此,将有机会查出谁是谁。
 
joo: 那么2,那又怎样?你怎么知道设备0是显卡,1是CPU?
你的显卡是0?这真令人吃惊。