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

 
2012.03.08 11:01:12     ParallelTester_00-02-j16x7x3z (EURUSD,M30)      OpenCL init OK!
2012.03.08 11:01:16     ParallelTester_00-02-j16x7x3z (EURUSD,M30)      GPU time = 3962 ms
2012.03.08 11:01:16     ParallelTester_00-02-j16x7x3z (EURUSD,M30)      Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
2012.03.08 11:01:16     ParallelTester_00-02-j16x7x3z (EURUSD,M30)      Result on Gpu МахResult==1.45763 at 821 pass
2012.03.08 11:07:01     ParallelTester_00-02-j16x7x3z (EURUSD,M30)      CPU time = 345465 ms
2012.03.08 11:07:01     ParallelTester_00-02-j16x7x3z (EURUSD,M30)      Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
2012.03.08 11:07:01     ParallelTester_00-02-j16x7x3z (EURUSD,M30)      Result on Cpu МахResult==1.45762 at 821 pass
2012.03.08 11:07:01     ParallelTester_00-02-j16x7x3z (EURUSD,M30)      CpuTime/GpuTime = 87.19459868753155

同样,Papaklass 有板载视频,我有独立的,CPU是一样的,差别可以忽略不计。

Raraklass 你的轴比特率和轴是多少?

 
papaklass:

W7 32位。

谢谢。我也是,好吧,我想到了OpenCL的时候,所有的bug都会被修复,一切都会好起来。
 
MetaDriver:

...

由于贪婪,我不会发布源代码,但对于那些想在自己的硬件上进行尝试的人来说,预告片里有一个ex5。

就这样吧,我不干了。我出去了,输入的内容也关闭了,可以调整。))

FE      0       ParallelTester_00-02-j16x7x3z (AUDUSD,M5)       14:55:06        OpenCL init OK!
ED      0       ParallelTester_00-02-j16x7x3z (AUDUSD,M5)       14:55:10        GPU time = 3946 ms
LS      0       ParallelTester_00-02-j16x7x3z (AUDUSD,M5)       14:55:10        Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
KS      0       ParallelTester_00-02-j16x7x3z (AUDUSD,M5)       14:55:10        Result on Gpu МахResult==0.0 at 0 pass
GK      0       ParallelTester_00-02-j16x7x3z (AUDUSD,M5)       15:01:07        CPU time = 356587 ms
HI      0       ParallelTester_00-02-j16x7x3z (AUDUSD,M5)       15:01:07        Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
HI      0       ParallelTester_00-02-j16x7x3z (AUDUSD,M5)       15:01:07        Result on Cpu МахResult==1.05885 at 866 pass
KM      0       ParallelTester_00-02-j16x7x3z (AUDUSD,M5)       15:01:07        CpuTime/GpuTime = 90.36670045615813

如果你有一分钟的时间,你可以为我的唠叨调整一下ex5。))好吧,把通行证做得小一点,比如说512,或者100000 条。如果我不这样做,我就不这样做。反正我以后也要研究一切。))你已经给了我很多的例子来研究。谢谢你。

 
tol64:

就这样吧,我已经过气了。我在外面修修补补,入口处已经关闭。))

如果你有一些空闲时间,你可以为我的唠叨纠正ex5。))少做几次,例如512次,或100000........................。 谢谢。

尼瓦普罗斯。

2012.03.08 16:37:13    ParallelTester_00-02-(16x7x3) (EURUSD,M30)    CpuTime/GpuTime = 191.7058823529412
2012.03.08 16:37:13    ParallelTester_00-02-(16x7x3) (EURUSD,M30)    Result on Cpu МахResult==1.16557 at 228 pass
2012.03.08 16:37:13    ParallelTester_00-02-(16x7x3) (EURUSD,M30)    Соunt inticators = 16; Count history bars = 100000; Count pass = 256
2012.03.08 16:37:13    ParallelTester_00-02-(16x7x3) (EURUSD,M30)    CPU time = 35849 ms
2012.03.08 16:36:37    ParallelTester_00-02-(16x7x3) (EURUSD,M30)    Result on Gpu МахResult==1.16557 at 228 pass
2012.03.08 16:36:37    ParallelTester_00-02-(16x7x3) (EURUSD,M30)    Соunt inticators = 16; Count history bars = 100000; Count pass = 256
2012.03.08 16:36:37    ParallelTester_00-02-(16x7x3) (EURUSD,M30)    GPU time = 187 ms
2012.03.08 16:36:37    ParallelTester_00-02-(16x7x3) (EURUSD,M30)    OpenCL init OK!

--

顺便说一句,蟾蜍,CL代码仍然可以免费使用。

如果有人有任何疑问,我甚至可以详细地评论一下。

在你运行脚本后,它被称为cl_ParallelTester_00-02-(16x7x3).cl。

附加的文件:
 
MetaDriver:

尼瓦普罗斯。

顺便说一句,蟾蜍,CL代码仍然可以免费使用。

运行脚本后,它被称为cl_ParallelTester_00-02-(16x7x3).cl。

不幸的是,即使是这种变体也会把我的笔记本电脑的脑子炸掉。)))

起初,我错误地启动了旧的变体,并认为生活已经结束,因为整个屏幕都被 "雪 "覆盖。而且即使关闭终端也没有帮助。但重启有帮助,生活又回到了我身边。当它发生时,我像一个真正的西部英雄一样,设法按下PrtSc,捕捉到了光的奇观。我以为它不会起作用,但它确实起作用了。这里是它的样子。

//---

因此,他们在这里,来自弗拉基米尔-戈蒙诺夫的美味蛋糕。这很有意思。)))

 
tol64:

1.不幸的是,即使是这个选项也让我的笔记本电脑大跌眼镜。)))

2.起初,我错误地运行了旧的变体,以为生活结束了,因为整个屏幕都被 "雪 "覆盖。

1.可解决。这里有另一种变体。50000条x128次。

// 甚至比以前更好--我给神经网络添加了一个阶梯式激活函数。

// (以前的版本是线性的,这在真实的网格上是很没有意义的)。

2......当你的GPU超载时就会发生这种情况。 我的情况不止如此。;-)

附加的文件:
 
MetaDriver:

这是可以解决的。这里有另一个选择。50,000条 x 128次

// 比以前更好了--给神经网络增加了一个阶梯式激活函数。

// (以前的版本是线性的,这在真实的网格上是相当没有意义的)。

谢谢。结果是这样的。

OR      0       ParallelTester_00-02-a16x7x3u (AUDUSD,M5)       16:27:08        OpenCL init OK!
DD      0       ParallelTester_00-02-a16x7x3u (AUDUSD,M5)       16:27:11        GPU time = 2216 ms
PR      0       ParallelTester_00-02-a16x7x3u (AUDUSD,M5)       16:27:11        Соunt inticators = 16; Count history bars = 50000; Count pass = 128
EQ      0       ParallelTester_00-02-a16x7x3u (AUDUSD,M5)       16:27:11        Result on Gpu МахResult==3.56957 at 14 pass
QI      0       ParallelTester_00-02-a16x7x3u (AUDUSD,M5)       16:27:29        CPU time = 17894 ms
GH      0       ParallelTester_00-02-a16x7x3u (AUDUSD,M5)       16:27:29        Соunt inticators = 16; Count history bars = 50000; Count pass = 128
FJ      0       ParallelTester_00-02-a16x7x3u (AUDUSD,M5)       16:27:29        Result on Cpu МахResult==3.56957 at 14 pass
OL      0       ParallelTester_00-02-a16x7x3u (AUDUSD,M5)       16:27:29        CpuTime/GpuTime = 8.074909747292418

//---

这里有一个问题(对开发者可能更多)。为什么之前的变体对地图有如此大的杀伤力?顺便说一下,巴恩斯利的蕨类植物在深入放大时也会在我身上崩溃。这个问题是在编程中以某种方式解决的,还是终端机制最终能够控制这个问题。我的意思是,不应该有崩溃,只是应该有更长的计算时间。

 
tol64:

谢谢你。结果是这样的。

//---

这里有一个问题(可能更多的是针对开发者)。为什么之前的选项在地图上如此致命?顺便说一下,巴恩斯利的蕨类植物在深入放大时也会在我身上崩溃。这个问题是在编程中以某种方式解决的,还是终端机制最终能够控制这个问题。我的意思是不应该有崩溃,只是应该有更长的计算时间。

请。

--

这听起来可能出乎意料,但我强烈反对由终端控制--这将减缓检查的速度。

而这一点,尽管我的蕨类植物在强烈的升频下,把录像带的驱动器完全撕碎了。

// 是的,系统没有崩溃 -- 驱动程序自己重启,并有一个关键的错误信息

// 但终端死锁了 - 我不得不从任务管理器中杀死它。

相反,应该创建GPU_Info(int GPU_PARAM_xxx)函数,检索有关视频卡的系统信息,包括一个任务允许的最大缓冲区总量。 然后,程序员可以自己注意不要超过限制。

Документация по MQL5: Программы MQL5 / Ошибки выполнения
Документация по MQL5: Программы MQL5 / Ошибки выполнения
  • www.mql5.com
Программы MQL5 / Ошибки выполнения - Документация по MQL5
 
MetaDriver:

相反,应该创建GPU_Info(int GPU_PARAM_xxx)函数,检索有关视频卡的系统信息,包括一个任务的最大 缓冲区数量。 然后,程序员自己可以照顾到不超过限制。

你的建议更好,但原则上是一脉相承的--控制。一些用户可能会因为这样的舞蹈而提前出现白发,或有怒气发作。那时,这一切将倾倒在谁身上。对,是程序员。将有更多的工作用于套利。而且没有人需要它。)))
 

来自AlexEro 关于 "四合一 "的帖子的链接:所有或多或少的现代AMD显卡的表格

如果你对计算中对双精度的支持感兴趣--请看专栏FP64(双精度)--双精度浮点计算。它在表中排名倒数第二。如果有"-",意味着不支持。